Announcement

Collapse
No announcement yet.

R600 Gallium3D LLVM Shader Compiler Hooked Up

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

  • R600 Gallium3D LLVM Shader Compiler Hooked Up

    Phoronix: R600 Gallium3D LLVM Shader Compiler Hooked Up

    Mainline Mesa Git can now be built with the AMD R600 Gallium3D LLVM shader compiler back-end available...

    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
    Sounds great! I'm a "bit" confused, though.
    Will this also end up as a workhorse for GLSL eventually or is meant to be OpenCL focused only?

    Comment


    • #3
      Originally posted by entropy View Post
      Sounds great! I'm a "bit" confused, though.
      Will this also end up as a workhorse for GLSL eventually or is meant to be OpenCL focused only?
      Seems like for both.
      It is good to hear that open-source stack will get OpenCL support soon.

      Comment


      • #4
        Meanwhile who is compiling the shaders in Gallium?

        Comment


        • #5
          Originally posted by cl333r View Post
          Meanwhile who is compiling the shaders in Gallium?
          I guess one has to be a real expert to keep track on which driver/architecture makes use of which approach to shader compilation.
          Seems like there's no general approach among different Gallium drivers.

          I'm lost...

          Comment


          • #6
            Originally posted by entropy View Post
            I guess one has to be a real expert to keep track on which driver/architecture makes use of which approach to shader compilation.
            Seems like there's no general approach among different Gallium drivers.

            I'm lost...
            Or maybe in the meantime the shaders aren't compiled at all, maybe they're interpreted or read from punch cards.

            Comment


            • #7
              Useless for now, Unigine heaven shows green screen, lightmark does not render a model of the robot, ET:QW receives a segmentation fault.
              R600_USE_LLVM=0 environment variable does not change anything, LLVM shader compiler is used anyway.

              Comment


              • #8
                Originally posted by entropy View Post
                Sounds great! I'm a "bit" confused, though.
                Will this also end up as a workhorse for GLSL eventually or is meant to be OpenCL focused only?
                The LLVM backend will be used for OpenCL. It could potentially be used for GLSL as well, but it still needs a fair amount of work to bring it up to par with the current r600g compiler. At the moment there aren't any plans to improve GLSL support in the LLVM backend, but the work could certainly be done if an interested developer (or developers) wanted to do it.

                Comment


                • #9
                  Originally posted by Pontostroy View Post
                  Useless for now, Unigine heaven shows green screen, lightmark does not render a model of the robot, ET:QW receives a segmentation fault.
                  R600_USE_LLVM=0 environment variable does not change anything, LLVM shader compiler is used anyway.
                  The environment variable is actually R600_LLVM. I made a mistake in the commit message.

                  Comment


                  • #10
                    Originally posted by tstellar View Post
                    The LLVM backend will be used for OpenCL. It could potentially be used for GLSL as well, but it still needs a fair amount of work to bring it up to par with the current r600g compiler. At the moment there aren't any plans to improve GLSL support in the LLVM backend, but the work could certainly be done if an interested developer (or developers) wanted to do it.
                    Is this a feasible approach? Will LLVM bring significant improvements in any area over the current compiler?
                    If LLVM will be used for GPGPU compute wouldn't it make sense to have one compiler (with two front ends) instead of two?

                    is this technically related to the LunarGLASS project? afaik, they have GLSL to LLVM frontend

                    Comment

                    Working...
                    X