Announcement

Collapse
No announcement yet.

Bringing The R600 Gallium3D Driver Up To Speed

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Bringing The R600 Gallium3D Driver Up To Speed

    Phoronix: Bringing The R600 Gallium3D Driver Up To Speed

    The R600 Gallium3D driver for ATI Radeon HD 2000/3000/4000 graphics cards is not yet in a state for testing by end-users unlike the R300 Gallium3D driver that is running great these days. However, it is slowly getting there...

    Phoronix, Linux Hardware Reviews, Linux hardware benchmarks, Linux server benchmarks, Linux benchmarking, Desktop Linux, Linux performance, Open Source graphics, Linux How To, Ubuntu benchmarks, Ubuntu hardware, Phoronix Test Suite

  • #2
    Marek has been doing amazing work over the last months. If any of the volounteers deserved to get hired/payed, then it would be him.

    Comment


    • #3
      The r600 Gallium driver is the last major architectural step left for the r600 and r700 hardware. I'm looking forward to the time when it is ready and can plug into all the cool Gallium-based goodness that is slowly getting developed.

      Keep it up!

      Comment


      • #4
        Wow! Marek is truly awesome nowadays! Not only extended and speeded up r300g he still has energy to help out with the r600g driver. Hands down!

        On the other hand I miss Corbin. He is rather inactive recently, I guess he doesn't have much free time. Imagine that he is also working on r600g. We would have it in ~6 weeks with some decent speed.

        Anyway, how much work is left before we can test it? Say, in percentage. Test means the level where compiz works.

        *Can't wait!*

        Comment


        • #5
          $ LIBGL_DEBUG=verbose glxinfo
          name of display: :0.0
          libGL: OpenDriver: trying /usr/lib/dri-gallium/tls/r600_dri.so
          libGL: OpenDriver: trying /usr/lib/dri-gallium/r600_dri.so
          <<
          FRAG
          DCL IN[0], COLOR, PERSPECTIVE
          DCL OUT[0], COLOR
          0: MOV OUT[0], IN[0]
          1: END
          --------------------------------------------------------------
          # node ENTRY
          MOV OUTPUT[1][xyzw] INPUT[0][xyzw];
          # node END
          >>

          <<
          VERT
          DCL IN[0]
          DCL IN[1]
          DCL OUT[0], POSITION
          DCL OUT[1], COLOR
          0: MOV OUT[0], IN[0]
          1: MOV OUT[1], IN[1]
          2: END
          --------------------------------------------------------------
          # node ENTRY
          VFETCH TEMPORARY[1][xyzw] INPUT[4][xxxx] (null)[6][xxxx];
          VFETCH TEMPORARY[0][xyzw] INPUT[4][xxxx] (null)[5][xxxx];
          MOV OUTPUT[2][xyzw] TEMPORARY[0][xyzw];
          MOV OUTPUT[3][xyzw] TEMPORARY[1][xyzw];
          # node END
          >>

          <<
          VERT
          DCL IN[0]
          DCL IN[1]
          DCL OUT[0], POSITION
          DCL OUT[1], GENERIC[0]
          0: MOV OUT[0], IN[0]
          1: MOV OUT[1], IN[1]
          2: END
          --------------------------------------------------------------
          # node ENTRY
          VFETCH TEMPORARY[1][xyzw] INPUT[4][xxxx] (null)[6][xxxx];
          VFETCH TEMPORARY[0][xyzw] INPUT[4][xxxx] (null)[5][xxxx];
          MOV OUTPUT[2][xyzw] TEMPORARY[0][xyzw];
          MOV OUTPUT[3][xyzw] TEMPORARY[1][xyzw];
          # node END
          >>

          <<
          FRAG
          DCL IN[0], GENERIC[0], PERSPECTIVE
          DCL OUT[0], COLOR
          DCL SAMP[0]
          0: TEX OUT[0], IN[0], SAMP[0], 2D
          1: END
          --------------------------------------------------------------
          ntransform_instruction 168 unsupported
          ERROR(r600_pipe_shader_create 144)>>

          <<
          FRAG
          DCL IN[0], GENERIC[0], PERSPECTIVE
          DCL OUT[0], COLOR
          DCL SAMP[0]
          0: TEX OUT[0], IN[0], SAMP[0], CUBE
          1: END
          --------------------------------------------------------------
          ntransform_instruction 168 unsupported
          ERROR(r600_pipe_shader_create 144)>>

          <<
          VERT
          DCL IN[0]
          DCL IN[1]
          DCL OUT[0], POSITION
          DCL OUT[1], GENERIC[0]
          0: MOV OUT[0], IN[0]
          1: MOV OUT[1], IN[1]
          2: END
          --------------------------------------------------------------
          # node ENTRY
          VFETCH TEMPORARY[1][xyzw] INPUT[4][xxxx] (null)[6][xxxx];
          VFETCH TEMPORARY[0][xyzw] INPUT[4][xxxx] (null)[5][xxxx];
          MOV OUTPUT[2][xyzw] TEMPORARY[0][xyzw];
          MOV OUTPUT[3][xyzw] TEMPORARY[1][xyzw];
          # node END
          >>

          <<
          FRAG
          DCL IN[0], GENERIC[0], PERSPECTIVE
          DCL OUT[0], COLOR
          DCL SAMP[0]
          0: TEX OUT[0], IN[0], SAMP[0], 2D
          1: END
          --------------------------------------------------------------
          ntransform_instruction 168 unsupported
          ERROR(r600_pipe_shader_create 144)>>

          Error: couldn't find RGB GLX visual or fbconfig

          32 GLXFBConfigs:
          visual x bf lv rg d st colorbuffer ax dp st accumbuffer ms cav
          id dep cl sp sz l ci b ro r g b a bf th cl r g b a ns b eat
          ----------------------------------------------------------------------
          0x6a 0 tc 0 16 0 r . . 5 6 5 0 0 0 0 0 0 0 0 0 0 None
          0x6b 0 tc 0 16 0 r . . 5 6 5 0 0 0 0 16 16 16 0 0 0 Slow
          0x6c 0 tc 0 16 0 r y . 5 6 5 0 0 0 0 0 0 0 0 0 0 None
          0x6d 0 tc 0 16 0 r y . 5 6 5 0 0 0 0 16 16 16 0 0 0 Slow
          0x6e 0 tc 0 16 0 r . . 5 6 5 0 0 16 0 0 0 0 0 0 0 None
          0x6f 0 tc 0 16 0 r . . 5 6 5 0 0 16 0 16 16 16 0 0 0 Slow
          0x70 0 tc 0 16 0 r y . 5 6 5 0 0 16 0 0 0 0 0 0 0 None
          0x71 0 tc 0 16 0 r y . 5 6 5 0 0 16 0 16 16 16 0 0 0 Slow
          0x72 0 tc 0 16 0 r . . 5 6 5 0 0 24 0 0 0 0 0 0 0 None
          0x73 0 tc 0 16 0 r . . 5 6 5 0 0 24 0 16 16 16 0 0 0 Slow
          0x74 0 tc 0 16 0 r y . 5 6 5 0 0 24 0 0 0 0 0 0 0 None
          0x75 0 tc 0 16 0 r y . 5 6 5 0 0 24 0 16 16 16 0 0 0 Slow
          0x76 0 tc 0 16 0 r . . 5 6 5 0 0 24 8 0 0 0 0 0 0 None
          0x77 0 tc 0 16 0 r . . 5 6 5 0 0 24 8 16 16 16 0 0 0 Slow
          0x78 0 tc 0 16 0 r y . 5 6 5 0 0 24 8 0 0 0 0 0 0 None
          0x79 0 tc 0 16 0 r y . 5 6 5 0 0 24 8 16 16 16 0 0 0 Slow
          0x9a 0 dc 0 16 0 r . . 5 6 5 0 0 0 0 0 0 0 0 0 0 None
          0x9b 0 dc 0 16 0 r . . 5 6 5 0 0 0 0 16 16 16 0 0 0 Slow
          0x9c 0 dc 0 16 0 r y . 5 6 5 0 0 0 0 0 0 0 0 0 0 None
          0x9d 0 dc 0 16 0 r y . 5 6 5 0 0 0 0 16 16 16 0 0 0 Slow
          0x9e 0 dc 0 16 0 r . . 5 6 5 0 0 16 0 0 0 0 0 0 0 None
          0x9f 0 dc 0 16 0 r . . 5 6 5 0 0 16 0 16 16 16 0 0 0 Slow
          0xa0 0 dc 0 16 0 r y . 5 6 5 0 0 16 0 0 0 0 0 0 0 None
          0xa1 0 dc 0 16 0 r y . 5 6 5 0 0 16 0 16 16 16 0 0 0 Slow
          0xa2 0 dc 0 16 0 r . . 5 6 5 0 0 24 0 0 0 0 0 0 0 None
          0xa3 0 dc 0 16 0 r . . 5 6 5 0 0 24 0 16 16 16 0 0 0 Slow
          0xa4 0 dc 0 16 0 r y . 5 6 5 0 0 24 0 0 0 0 0 0 0 None
          0xa5 0 dc 0 16 0 r y . 5 6 5 0 0 24 0 16 16 16 0 0 0 Slow
          0xa6 0 dc 0 16 0 r . . 5 6 5 0 0 24 8 0 0 0 0 0 0 None
          0xa7 0 dc 0 16 0 r . . 5 6 5 0 0 24 8 16 16 16 0 0 0 Slow
          0xa8 0 dc 0 16 0 r y . 5 6 5 0 0 24 8 0 0 0 0 0 0 None
          0xa9 0 dc 0 16 0 r y . 5 6 5 0 0 24 8 16 16 16 0 0 0 Slow
          anything i did wrong ?

          Comment


          • #6
            I hope it hits Mesa master soon.

            Comment


            • #7
              When pm gets stabilized and galium3d is usable, I'm switching to the oss driver. :-)

              Comment


              • #8
                What is up with the overal status of Gallium3D and the likes?
                -Mesa is already a State Tracker, right? Is it fully converted to Gallium3D compatibility? Or is it lacking compared to standard/classic Mesa?
                -What is up with all the other State Trackers and where do they 'live'? OpenGL lives in Mesa, but where is OpenCL, OpenVG and all the rest?
                -Is the only thing that is lacking in r600 and up the Gallium driver, or is there more to it?

                Thanks in advance for answering these questions

                Comment


                • #9
                  Originally posted by V!NCENT View Post
                  Is the only thing that is lacking in r600 and up the Gallium driver, or is there more to it?
                  Dunno about lacking but it's imo likely the DRM part for r600/r700 can still be optimized more. I'm not sure DRM support for the newest and shiniest cards is there yet but I might be wrong.

                  Comment


                  • #10
                    Originally posted by d2kx View Post
                    Marek has been doing amazing work over the last months. If any of the volounteers deserved to get hired/payed, then it would be him.
                    Very much agreed!

                    Comment

                    Working...
                    X