The code for OpenGL threaded GL dispatch is now finally in Mesa-git, after multiple developers attempts to fix it up. This should improve performance in multiple games for users of the open source Mesa drivers.
Enabling it was spread across multiple commits a few hours ago by a Mesa developer (examples: #1, #2).
Basically, this is an attempt to reduce the CPU overhead of Mesa, which has caused issues in a number of games. It won't help all games though, to be clear on that, as some developers already do some form of it (like Feral Interactive) in their games directly.
It has been tested against (at least) Borderlands 2 and Civilization VI by the mesa developers, which showed improved performance.
It sounds like they will still use a whitelist, as noted by this mailing list entry on the Mesa-dev mailing list where it was given the go-ahead:
As of yet, I don't see anything to indicate a whitelist has been made.
You can test it by using "mesa_glthread=true %command%" in the launch options for Steam games (thanks lordheavy).
Work on it isn't complete though, as following some other discussions on the Mesa-dev mailing list there's still a bunch of 'piglit tests' it causes crashes with. Those will gradually get cleaned up over time.
For more info on threaded OpenGL dispatch, you can see these presentation slides from a previous X.Org dev conferences. My googling didn't find anything newer.
Enabling it was spread across multiple commits a few hours ago by a Mesa developer (examples: #1, #2).
Basically, this is an attempt to reduce the CPU overhead of Mesa, which has caused issues in a number of games. It won't help all games though, to be clear on that, as some developers already do some form of it (like Feral Interactive) in their games directly.
It has been tested against (at least) Borderlands 2 and Civilization VI by the mesa developers, which showed improved performance.
It sounds like they will still use a whitelist, as noted by this mailing list entry on the Mesa-dev mailing list where it was given the go-ahead:
QuoteYeah it looks like it can be merged and we can start adding a white list. From the little testing we've done, it seems that a lot of games from Aspyr Media will benefit from this, namely Civilization 6 and the Borderlands series.
As of yet, I don't see anything to indicate a whitelist has been made.
You can test it by using "mesa_glthread=true %command%" in the launch options for Steam games (thanks lordheavy).
Work on it isn't complete though, as following some other discussions on the Mesa-dev mailing list there's still a bunch of 'piglit tests' it causes crashes with. Those will gradually get cleaned up over time.
For more info on threaded OpenGL dispatch, you can see these presentation slides from a previous X.Org dev conferences. My googling didn't find anything newer.
Some you may have missed, popular articles from the last month:
All posts need to follow our rules. For users logged in: please hit the Report Flag icon on any post that breaks the rules or contains illegal / harmful content. Guest readers can email us for any issues.
16 comments
it can be easily tested with mesa_glthread=true %command% under steam
3 Likes, Who?
it can be easily tested with mesa_glthread=true %command% under steamThanks dude, added it in.
0 Likes
Work on it isn't complete though, as following some other discussions on the Mesa-dev mailing list there's still a bunch of 'piglit tests' it causes crashes with. Those will gradually get cleaned up over time.
As I never heard of it, I looked it up.
It's a framework for automatic OpenGL tests:
https://people.freedesktop.org/~nh/piglit/
Last edited by Eike on 16 March 2017 at 11:16 am UTC
1 Likes, Who?
Thanks, popped a quick link in the text to it if people want to see.Work on it isn't complete though, as following some other discussions on the Mesa-dev mailing list there's still a bunch of 'piglit tests' it causes crashes with. Those will gradually get cleaned up over time.
As I never heard of it, I looked it up.
It's a framework for automatic OpenGL tests:
https://people.freedesktop.org/~nh/piglit/
1 Likes, Who?
Unitygames seem to be CPU bound on my machine sometimes, like the demo of Shadow Tactics, which is laggy. I would like to test it, is it possible to do on the DRM-free demo?
I hope they enable it fully soon! Many games are JUST under the threshold for being painlessly playable for me right now, perhaps a little bump like this will be what it takes.
I hope they enable it fully soon! Many games are JUST under the threshold for being painlessly playable for me right now, perhaps a little bump like this will be what it takes.
0 Likes
we need to do benchmarks again for a lot of games...
maybe now some games that used to perform on pair or worse than windows version could show an clear advantage...
after all, porters were aiming at the game be playable not to perform great, now we can have something better than they expected
Last edited by elmapul on 16 March 2017 at 12:42 pm UTC
maybe now some games that used to perform on pair or worse than windows version could show an clear advantage...
after all, porters were aiming at the game be playable not to perform great, now we can have something better than they expected
Last edited by elmapul on 16 March 2017 at 12:42 pm UTC
1 Likes, Who?
0 Likes
I'm just going to leave this here
View video on youtube.com
Poor Windows lady got cold i guess...
1 Likes, Who?
It won't help all games though, to be clear on that, as some developers already do some form of it (like Feral Interactive) in their games directly.
I suppose it will also conflict with CSMT in Wine, if enabled. Though it would be interesting to test and check the difference.
0 Likes
nice.
0 Likes
Could anyone be so kind and check out if Tropico 5 will benefit from it?
0 Likes
I wish I could test this but I don't have time right now. Samsai has a Radeon based system doesn't he? I wonder if he could do some testing for us ;-)
0 Likes
it can be easily tested with mesa_glthread=true %command% under steam
That's a cool thing, since even in the launchers / shell script launching the games that can be added if the game requires it and does not have it's own threading model.
0 Likes
Not sure whey they used lower case variable though. Usual Mesa variables are upper case. Not that it matters much (I personally prefer lower case), but why not be consistent?
https://www.mesa3d.org/envvars.html
Last edited by Shmerl on 17 March 2017 at 2:22 pm UTC
https://www.mesa3d.org/envvars.html
Last edited by Shmerl on 17 March 2017 at 2:22 pm UTC
0 Likes
Not sure whey they used lower case variable though. Usual Mesa variables are upper case. Not that it matters much (I personally prefer lower case), but why not be consistent?
Because it's a dri option (lower case) and not a mesa environment variable (higher case). But yes, you can pass dri options as environment variables :)
1 Likes, Who?
Not sure whey they used lower case variable though. Usual Mesa variables are upper case. Not that it matters much (I personally prefer lower case), but why not be consistent?
Because it's a dri option (lower case) and not a mesa environment variable (higher case). But yes, you can pass dri options as environment variables :)
Good to know, thanks!
0 Likes
See more from me