Support us on Patreon to keep GamingOnLinux alive. This ensures all of our main content remains free for everyone. Just good, fresh content! Alternatively, you can donate through PayPal. You can also buy games using our partner links for GOG and Humble Store.
We do often include affiliate links to earn us some pennies. See more here.
The AMD developer Marek Olšák sent over a patch to Mesa for the AMD radeonsi driver that he found by luck, and it improves DiRT: Showdown on Ultra settings by 15%. It's likely of course that this can help other games too. Thanks to Phoronix for pointing it out.

It does of course make me wonder: Just how many gotchas like this are hidden in Mesa, and how many other general improvements can be made? I'm betting there's quite a few.

From the mailing list entry:
Quote-/* Prefer RE_Z if the shader is complex enough. The requirement is either:
- * - the shader uses at least 2 VMEM instructions, or
- * - the code size is at least 50 2-dword instructions or 100 1-dword
- * instructions.
+ /* DON'T USE EARLY_Z_THEN_RE_Z !!!
+ *
+ * It decreases performance by 15% in DiRT: Showdown on Ultra settings.
+ * And it has pretty complex shaders.
*
* Shaders with side effects that must execute independently of the
* depth test require LATE_Z.


It's worth noting that Marek sent another patch to Mesa in early August, that helped with Bioshock Infinite performance by quite a lot.

It's interesting to see that both of these improvements to Mesa were found as a result of ports from Virtual Programming. People are always torn on their ports, but their ports are now helping developers improve Mesa, so that's nice.

It's really pleasing to see such performance increases for AMD users, and such fast-paced improvement for Mesa over the past year. The next few releases of Mesa are going to be awesome. Article taken from GamingOnLinux.com.
0 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 checked 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.
See more from me
The comments on this article are closed.
9 comments

MaCroX95 Oct 12, 2016
Great to hear that AMD brothers are getting better with driver support as well! As I said a lot of great stuff happening to linux lately :)
ElectricPrism Oct 12, 2016
Ark is a great example of a game that could use Shader optimizations and improvements.
MayeulC Oct 12, 2016
I would be curious to see some benchmarks. Is it an improvement only in Dirt? Does it slow down other games? (An optimization has been disabled, after all)


Last edited by MayeulC on 13 October 2016 at 6:24 am UTC
ertuqueque Oct 13, 2016
It might be a "gaming" unrelated question, but... Does anyone of you know how to activate OpenCL under Linux for an AMD Radeon R9 390?... I tried a couple months ago without luck (Although I don't consider myself an expert), I'm waiting for better features support in their drivers, but it seems that it's still not possible, please, someone correct me if I'm wrong. Thanks.
no_information_here Oct 13, 2016
QuoteIt's interesting to see that both of these improvements to Mesa were found as a result of ports from Virtual Programming. People are always torn on their ports, but their ports are now helping developers improve Mesa, so that's nice.
I was amazed by the smoothness of Bioshock Infinite. Whatever they did made it completely playable on my very basic GTX 750. I have no complaints about Virtual Programming at all. I think whatever early issues they had with Witcher 2 made them become a stronger porting company. Dirt Showdown works smoothly, too.

On-topic: I would be very happy to switch to AMD if they can get their power efficiency close to Nvidia. I don't want a hot noisy card, even if it is cheap and fast! However, it is great seeing the open AMD driver making such big steps...
baccilus Oct 13, 2016
How does one find a patch by luck? (I am not a programmer)
ziabice Oct 13, 2016
Quoting: baccilusHow does one find a patch by luck? (I am not a programmer)

You are testing mesa in real world using a game, see something that sounds "wrong", have an idea where the problem is, investigate, but found that the problem was elsewhere while looking at the code: this is the "by luck" of a programmer. Happens a lot when you do this job.

Someone tried the patch? Does it solves the poor performance problem in games like Saints Row III and IV on AMD cards? The games are actually unplayable on my Radeon 7850.
BOYSSSSS Oct 13, 2016
QuoteSomeone tried the patch? Does it solves the poor performance problem in games like Saints Row III and IV on AMD cards? The games are actually unplayable on my Radeon 7850.
Saints Row III and IV have horrible performance on Windows too so its not VPs fault.


Last edited by BOYSSSSS on 13 October 2016 at 11:00 am UTC
mrdeathjr Oct 13, 2016
Quoting: ziabice
Quoting: baccilusHow does one find a patch by luck? (I am not a programmer)

You are testing mesa in real world using a game, see something that sounds "wrong", have an idea where the problem is, investigate, but found that the problem was elsewhere while looking at the code: this is the "by luck" of a programmer. Happens a lot when you do this job.

Someone tried the patch? Does it solves the poor performance problem in games like Saints Row III and IV on AMD cards? The games are actually unplayable on my Radeon 7850.

But your case A10-7850K is part of low fps problem: lower ipc (very low single thread performance), fpu shared (1 fpu for each 2 alus)*, very slow L2 and L3 cache memory**

*this cpus is not quad core same as when said core i3 (2 fpus with 2 alus + ht) as quad core and this is a big lie also said FX 6xxx are 6 core cpu (3 fpus with 6 alus) FX 8xxx is 8 core cpu (4 fpus with 8 alus) or said core i7 67xx (4 fpus with 4 alus + ht) are 8 core cpu

However when said core i7 2011 case 5820K / 6800K are six core this is correct because this cpus have 6 fpus + 6 alus + ht and very similar occurs when said 5960X / 6900K are 8 core cpus because both cpus have 8 fpus + 8 alus + ht

Real quad core normally have 1 fpu for each alu case core i5, More correct A10-7850K description could be like this: cpu with 2 fpus and 4 alus

**In regular processors L3 cache memory is more slow than L2 cache memory but in bulldozer derivatives arquitecture case as your A10-7850K (Kaveri)

Bulldozer and derivatives L2 cache memory is more slower than L3 cache memory used by intel cpus

Another issue stay in high tdp but this is other topic

Maybe can change for i5 skylake / kibylake or wait for zen apu based in someplace close to end Q2 of 2017

Without forget amd open source driver have low performance in vp ports

^_^


Last edited by mrdeathjr on 13 October 2016 at 1:56 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.