Announcement

Collapse
No announcement yet.

Threaded OpenGL Dispatch Lands In Mesa 17.1

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

  • #11
    This is amazing and even better when no white list is necessary.

    Comment


    • #12
      I was really hoping this wouldn't happen. When the same thing happened for the proprietary drivers it caused all sorts of trouble. Nvidia even used it in a really devious driver cheat. But I suppose as long as it requires a whitelist, and the whitelist is managed by an OSS community, then it'll probably be ok.

      Comment


      • #13
        Threaded dispatch and shader cache, am I dreaming?
        ## VGA ##
        AMD: X1950XTX, HD3870, HD5870
        Intel: GMA45, HD3000 (Core i5 2500K)

        Comment


        • #14
          Which apps/games are on the whitelist and how hard is it to edit or get things put on the whitelist? Very interesting. Is this a better approach than how nvidia go about multi threading?

          Comment


          • #15
            Cool

            Originally posted by duby229 View Post
            I was really hoping this wouldn't happen.
            It is performance enhancement feature same like disk cache... if we all have say 10 times faster CPUs today (but we don't) no one would care about both

            Comment


            • #16
              Originally posted by dungeon View Post
              Cool



              It is performance enhancement feature same like disk cache... if we all have say 10 times faster CPUs today (but we don't) no one would care about both
              Not really. This feature only makes sense in cases where the game engine dispatches threads in a single queue, and further only iwhere the additional latency is less than the additional cpu performance. For games that already dispatch threads properly, which is the majority of them nowadays, it hurts badly. Have you noticed that many games require to be started from a shell script? Have you ever looked at them to see what they do?

              Comment


              • #17
                Originally posted by LeJimster View Post
                Which apps/games are on the whitelist and how hard is it to edit or get things put on the whitelist?
                It is env variable mesa_glthread to play with.

                Is this a better approach than how nvidia go about multi threading?
                It is same but similar as nvidia's or fglrx/amdgpu-pro's approach. As different enough cos of state of the art of it, where you can expect varying degree of success in comparison to these.

                Since this is out of spec performance enhancement feature, just do not expect this will speed up same games in the same way other implementations do

                Comment


                • #18
                  Hm trying to compile from git I get this error

                  drivers/dri2/.libs/platform_drm.o: In function `get_back_bo':
                  platform_drm.c.text+0x1dd): undefined reference to `gbm_bo_create_with_modifiers'


                  If I revert the relevant patch (https://cgit.freedesktop.org/mesa/me...422a209e1e7e06) it compiles fine.

                  Tomb Raider 2013 crashes with mesa_glthread=true

                  Hitman on the other hand is smoother with mesa_glthread=true but I didn't have fps counter enabled to say how much improve.


                  UPDATE: I run Hitman with the steam in game fps counter and the result is very strange. @4k (which is unplayable for me) in the same prologue mission I get 28-30 fps WITHOUT the glthreads and only 20fps WITH the glthreads BUT for sure the experience with the glthreads is smoother.

                  I guess that the steam fps counter can't handle this scenario.
                  Last edited by gbil; 16 March 2017, 12:33 PM.

                  Comment


                  • #19
                    Originally posted by duby229 View Post

                    Not really. This feature only makes sense in cases where the game engine dispatches threads in a single queue, and further only iwhere the additional latency is less than the additional cpu performance. For games that already dispatch threads properly, which is the majority of them nowadays, it hurts badly. Have you noticed that many games require to be started from a shell script? Have you ever looked at them to see what they do?
                    This feature is not pushed as final nor stable, there is a long long way to it It is pushed to be there in mesa, just that hopefully more easely could be further improved there

                    Why you complain i dunno, it is not enabled by default and does not affect anything since it is disabled - it is feature that might help in certain (and currently in very small amount of) cases of course

                    Because people does not understand things, maybe devs should put warning there like:

                    ***ACHTUNG, ACHTUNG! THIS IS STAGING AREA! PLEASE, JUST DON'T ENABLE THIS IF YOU DON'T KNOW WHAT YOU ARE DOING!!!***
                    Last edited by dungeon; 16 March 2017, 12:42 PM.

                    Comment


                    • #20
                      Originally posted by duby229 View Post
                      I was really hoping this wouldn't happen. When the same thing happened for the proprietary drivers it caused all sorts of trouble. Nvidia even used it in a really devious driver cheat. But I suppose as long as it requires a whitelist, and the whitelist is managed by an OSS community, then it'll probably be ok.
                      In the software world we have a solution for this kind of problem. But I would prefer to list the applications to exclude from using the functionality. The solution would thus be a blacklist instead of a whitelist.
                      https://en.wikipedia.org/wiki/Blacklist_(computing)
                      In this case mesa would get a blacklist of which applications to not use threaded opengl dispatch on.
                      Last edited by plonoma; 16 March 2017, 12:46 PM.

                      Comment

                      Working...
                      X