Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-6276382

OGL: acceleration not correctly detected and enabled on dual/Xinerama displays

XMLWordPrintable

    • 2d
    • b53
    • x86
    • linux

      FULL PRODUCT VERSION :
      java version "1.5.0_03"
      Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_03-b07)
      Java HotSpot(TM) Client VM (build 1.5.0_03-b07, mixed mode)


      ADDITIONAL OS VERSION INFORMATION :
      Linux zulu 2.6.11-gentoo-r7 #1 SMP Mon May 2 11:35:56 MDT 2005 i686 Intel(R) Pentium(R) 4 CPU 3.20GHz GenuineIntel GNU/Linux

      EXTRA RELEVANT SYSTEM CONFIGURATION :
      NVidia GeForce FX 5700 dual head video card
      NVidia Driver Version: 1.0-7174
      X.Org Version: 6.8.2
      TwinView enabled

      A DESCRIPTION OF THE PROBLEM :
      NVidia's twinview xinerama compatible layer allows for two distinct, connected physical display devices to be connected to a single, dual head video card and allow OpenGL acceleration on both displays at the same time.

      However, it appears that Java does not correctly detect the capabilities of the second physical display and will only enable OpenGL acceleration to one physical display with the NVidia TwinView drivers.

      See Twinview descriptions at ftp://download.nvidia.com/XFree86/Linux-x86/1.0-6629/README.txt
      specifically Appendix I for further information.

      See additional discussion at http://www.javagaming.org/cgi-bin/JGNetForums/YaBB.cgi?board=2D;action=display;num=1114040856



      STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
      The xorg.conf must include the following sections/settings to enable TwinView:
      Section "ServerFlags"
      Option "Xinerama" "false"
      EndSection

      Section "Device"
      Identifier "NVidia FX 5700"
      Driver "nvidia"
      Option "DPMS"
      Option "NvAgp" "1"
      Option "NoLogo" "false"
      Option "HWCursor" "true"
      Option "CursorShadow" "true"
      Option "TwinView" "true"
      Option "SecondMonitorHorizSync" "30.0-93.0"
      Option "SecondMonitorVertRefresh" "50.0-160.0"
      Option "MetaModes" "DFP-0: 1680x1050_60.00, CRT-0:1280x1024"
      EndSection

      Pass in the following argument to any compatible j2se java application:
      -Dsun.java2d.opengl=True

      EXPECTED VERSUS ACTUAL BEHAVIOR :
      EXPECTED -
      Java trace information should show:
      OpenGL pipeline enabled for default config on screen 0
      OpenGL pipeline enabled for default config on screen 1

      Followed by OGL* primitives, like OGLDrawLine, OGLBlitLoop, etc
      on both screen 0 and screen 1
      ACTUAL -
      Java trace information actually shows:
      "OpenGL pipeline enabled for default config on screen 0"
      "Could not enable OpenGL pipeline for default config on screen 1"

      Followed by OGL* primitives, OGLDrawLine, OGLBlitLoop, etc on screen 0 and unaccelerated X11* primitives, X11DrawLine, X11BlitLoop, etc on screen 1.

      ERROR MESSAGES/STACK TRACES THAT OCCUR :
      "Could not enable OpenGL pipeline for default config on screen 1"

      REPRODUCIBILITY :
      This bug can be reproduced always.

      ---------- BEGIN SOURCE ----------
      Any J2SE 1.5.0 compatible java application should suffice to see the error message by passing in "-Dsun.java2d.opengl=True" as an argument.

      For example:
      /opt/sun-jdk-1.5.0.03/jre/bin/java -Dsun.java2d.opengl=True test.view.TestFrame

      A more thorough dual display aware application that displays the Java2D trace messages (i.e. such as the OGLBlitLoops or X11 loops, etc) on the corresponding accelerated or unaccelerated display device can be furnished upon request if necessary.
      ---------- END SOURCE ----------
      ###@###.### 2005-05-26 07:03:49 GMT

            campbell Christopher Campbell (Inactive)
            campbell Christopher Campbell (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

              Created:
              Updated:
              Resolved:
              Imported:
              Indexed: