Announcement

Collapse
No announcement yet.

Overhauling Mesa's GLSL Compiler Performance

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

  • Overhauling Mesa's GLSL Compiler Performance

    Phoronix: Overhauling Mesa's GLSL Compiler Performance

    We like hearing about performance improvements for Linux and also Linux graphics in general, but when there's something about performance improvements for Linux graphics, it certainly gets us excited and garners our interest. This time we get to report on work being done to Mesa's GLSL compiler, which is now running drastically faster in a branch of Mesa that will be published in about a week. Intel's Ian Romanick has been working on optimizing GLSL IR and reworking the assembly shader (among other things) after ditching his efforts to write a new GLSL compiler, but VMware's Michal Krol has been rewriting the GLSL compiler pre-processor for Mesa as a step towards improving the GL Shading Language support and making it easier to strap in a new syntax parser in the future. Once Michal wrote the new pre-processor, the existing syntax parser ended up being a huge bottleneck, and while Ian was going to be writing a new syntax parser, Michal ended up writing a new simple one...

    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
    Is this the long awaited 3D improvement or not?

    Comment


    • #3
      i wonder how does it translate to normal usage numbers.

      Comment


      • #4
        With these improvements, shaders can be compiled faster, they do not magically compile into faster code. As most shaders are precompiled when the scene loads, you could expect games load times to go down, but usually the rendering speed should stay the same.

        Comment


        • #5
          boring... (sorry)

          Comment


          • #6
            Originally posted by rohcQaH View Post
            With these improvements, shaders can be compiled faster, they do not magically compile into faster code. As most shaders are precompiled when the scene loads, you could expect games load times to go down, but usually the rendering speed should stay the same.
            Yeah, I too thought that the speedups were related to output shader code and not to the compilers itself, until I read the ml.

            So yes, interesting, but not really groundbreaking.

            Comment


            • #7
              Is this JIT compiling? If so the the FPS would skyrocket...

              Comment


              • #8
                It's still an impressive and useful improvement, some games just took too long to load, so you could tell something wasn't quite right...

                Comment


                • #9
                  So what's this glsl-compiler actually good for?
                  AFAIK there's no mesa driver which actually supports glsl anyway? Except maybe the latest intels.
                  I still don't understand what is the missing piece for glsl on radeon-cards. Gallium3d seems to be coming along quite well, but from what I gathered in the last gallium3d-threads it's not actually going to give us glsl automagically.

                  Comment


                  • #10
                    I believe the missing piece for GLSL is driver support for some additional Mesa/TGSI IL instructions including things like flow control, plus the usual heap of testing and tweaking. The Mesa compiler processes application shader code into IL and passes that to the driver, which then compiles it again into native hardware instructions.
                    Test signature

                    Comment

                    Working...
                    X