We do often include affiliate links to earn us some pennies. See more here.

Valve developer Pierre-Loup Griffais mentioned on Twitter, about a new Mesa shader compiler for AMD graphics named "ACO" and they're calling for testers.

In the longer post on Steam, it goes over a brief history about Valve sponsoring work done by open-source graphics driver engineers, with it all being "very successful". The team has grown and they decided to go in a different direction with their work.

To paraphrase and keep it short and to the point, currently the OpenGL and Vulkan AMD drivers use a shader compiler that's part of the LLVM project. It's a huge project, it's not focused on gaming and it can cause issues. So, they started working on "ACO" with a focus on good results for shader generation in games and compile speed.

It's not yet finished, but the results are impressive as shown:

That is quite an impressive decrease in compile time! They expect to be able to improved that further eventually too, as it's currently only handling "pixel and compute shader stages". Valve also included some gaming results as well. Not quite as impressive when compared to the above perhaps, but every single bit of performance they can squeeze in is great:

With more detailed performance testing info available here. Now that it's looking pretty good, being stable in many games and seeing a reduction of stuttering they're looking for wider testing and feedback. Packages for Arch Linux should be ready later today, with Valve looking into a PPA for Ubuntu too. Interested in testing? See this forum post on Steam.

You can see the full post about it on Steam and more details on the Mesa-dev mailing list entry here. The code can also be viewed on GitHub.

This comes only recently after Valve released a statement about remaining "committed to supporting Linux as a gaming platform" as well as funding work on KWin. Really great to see all this!

Article taken from GamingOnLinux.com.
47 Likes
About the author -
author picture
I am the owner of GamingOnLinux. After discovering Linux back in the days of Mandrake in 2003, I constantly came back to check on the progress of Linux until Ubuntu appeared on the scene and it helped me to really love it. You can reach me easily by emailing GamingOnLinux directly. Find me on Mastodon.
See more from me
The comments on this article are closed.
69 comments
Page: «4/7»
  Go to:

Shmerl Jul 3, 2019
Quoting: YoRHa-2BYou cannot multi-thread compilers without sacrificing performance of the generated code. It's just not possible.

That really very much depends on the use case, and how compiler is designed and what it actually does. I'm not sure about shaders use case, but if some stages of the compilation are independent, they can be parallelized in general. That's quite commonly used in compilers to make compilation itself faster.

Example: https://internals.rust-lang.org/t/parallelizing-rustc-using-rayon/6606


Last edited by Shmerl on 3 July 2019 at 10:05 pm UTC
jens Jul 3, 2019
  • Supporter
Quoting: Purple Library Guy
Quoting: GuestSo previously I would point out that Valve only fund work that someone has started.
It's therefore only fair of me to look at this and point out that, I believe, this is instigated, developed, run by Valve itself.

Nice project. If it continues and becomes a more defacto backend for Mesa, I wonder what will happen with the llvm one. Doubt I'll be playing with ACO myself until it's more mature, but it's very nice to see this kind of investment.

...makes me wonder again what Valve are driving at. This kind of investment for a small market share platform? I don't believe it. They'll be wanting GNU/Linux (and it has to be GNU, there's no sense in not using the GNU components) to have a larger market share, so I'm curious what the plan is about that.
Yeah. I too think they must have something in mind. It's a nice thought; I hope they get it right this time.

I sometimes wonder if the original push for Steam Machines was sort of partly an experiment, or ended up that way--like either from the beginning or part way through they started to realize that the infrastructure they needed to make it work wasn't in place, but they'd already made some deals so they went through with it kind of half-heartedly while noting all the points of failure as a learning experience. If you want to learn what you would need to succeed at something, there's nothing like trying and failing, to rub your nose in it.

My best guess would still be a Google Stadia alternative.
Shmerl Jul 3, 2019
Quoting: jensMy best guess would still be a Google Stadia alternative.

Since they also focus on VR heavily, it could be something else too. VR doesn't really fit well with Stadia-like use case.
DaiKaiser93 Jul 3, 2019
Quoting: MohandevirThing is, when you buy a GPU, you don't buy it thinking it will break in the next 6 months. This one had really cheap fans that had bearing noise problems. None of my GTX650 (ASUS), GTX750 ti (Gigabyte) and GTX960 (Gigabyte) had these problems and I never paid for premium models. There's a minimum quality that must be respected. Not going to buy any GPU from MSI ever again.

I don't believe is something with MSI as a whole, I'm running a MSI RX580 Gaming X for 2 years now and haven't had any problems with it.

Maybe it was a bad unit?
jens Jul 3, 2019
  • Supporter
Quoting: Shmerl
Quoting: jensMy best guess would still be a Google Stadia alternative.

Since they also focus on VR heavily, it could be something else too. VR doesn't really fit well with Stadia-like use case.

Good point, may be there are heading towards several scenario's at the same time :)
MisterPaytwick Jul 3, 2019
With R9 380X on Dota, it's running just as fine (first a big freeze up, then nothing else). While I don't witnessed massive FPS increased, I've noted that checking the Compile Shaders option doesn't make the game freeze at all (you'd have that problem like every 10ish seconds), so it's a net win as now it seems we can use with radv the Compile Sharders option (which is a big feature of DX12 / Vulkan)

I may try DOOM tomorrow, I don't expect much more, but a (much) smoother experience feel amazing.


Last edited by MisterPaytwick on 3 July 2019 at 10:27 pm UTC
Zappor Jul 3, 2019
I made a PPA for Ubuntu, please help me test it! https://launchpad.net/~ernstp/+archive/ubuntu/mesaaco
fatino Jul 3, 2019
I tested Path of Exile. This game is shader heavy. This shader compiler basically cuts every stutter in half, which I guess coresponds well with the first graph. The game is still unplayable without async patch. But good news this patch feels better with AOC. Everything renders faster and fps don't go down that much. Maybe because GPU doesn't spend that much time on compiling shaders in the background. Great job Valve!
Oh and Dark Souls III loads into the game, plays the sound of the environment but keeps loading screen on the screen. I'll collect logs/RENDERDOC when I'll have a moment.
Koopacabras Jul 3, 2019
I wonder which distros are going to carry the torch of being the desktop distro and pack this now that Ubuntu has abandoned us.
Shmerl Jul 3, 2019
I think their plan is to get to the point where it's merged into upstream Mesa, so everyone will get it.


Last edited by Shmerl on 3 July 2019 at 11:28 pm UTC
While you're here, please consider supporting GamingOnLinux on:

Reward Tiers: Patreon. Plain Donations: PayPal.

This ensures all of our main content remains totally free for everyone! Patreon supporters can also remove all adverts and sponsors! Supporting us helps bring good, fresh content. Without your continued support, we simply could not continue!

You can find even more ways to support us on this dedicated page any time. If you already are, thank you!
The comments on this article are closed.