Last week I’ve written about my experience with AMD Radeon R9 270 card in Fedora 20. I have received much advice and feedback in the comments below and some people nudged me to try the latest opensource driver (it’s been a month since Fedora 20 release and OSS world clearly moves fast). So that’s what I did. This post is a follow-up to the previous one, just containing information about the latest changes in the RadeonSI driver. I haven’t tested Catalyst, because I already covered the latest version in the previous article and I don’t expect any major changes just by changing Fedora version.
I did all my testing on Fedora Rawhide (to be Fedora 21 in a distant future). In order to get newer OpenGL support, I used llvm 3.4 packages – those are not yet pushed to Rawhide’s repository, but they should be hopefully merged soon and are available in a special build tag for the moment. I used mesa git 2014-01-10, xorg-x11-drv-ati git 2014-01-12 and xorg-x11-glamor git 2014-01-15 (including a patch for faster gtk lines drawing) – all of this compiled on a machine with llvm 3.4. I was running on nodebug kernel 3.13 rc8 (beware of my mistakes). Packages for S3TC compression (libtxc_dxtn) were installed.
The changes in RadeonSI since Fedora 20
These are the major changes that I spotted in the short time:
- Dynamic power management is enabled automatically. You no longer need to adjust the kernel command line, the card scales its speed according to the load automatically. This is brought by kernel 3.13. One less thing to care about, great.
- GTK primitives rendering is much faster. The developers were very active in addressing the issue and provided several patches. They are not yet committed into the main branch, but one of them is now even included in Fedora packages by default. The rendering speed is not yet on par with other drivers (as you can see in the tests below), but it’s at least an order of magnitude faster. I have no problems with LibreOffice Calc or Motif-like GUIs anymore, everything runs perfectly. Many thanks to radeonsi developers.
- You’ll get OpenGL 3.1/3.0 version support instead of OpenGL 2.1. This is great news, because it allows more games to run, especially the commercial ones. There’s still a long way to go to the current OpenGL 4.4 specification, but this helps with compatibility a lot.
- There are some desktop rendering glitches. I’ve seen a small rendering issues with message tray icons in GNOME. Some of the icons sometimes became invisible (totally transparent). You could still click on them, but you could not see them. I’ve also seen others report this problem, so I assume it’s known and hopefully will be fixed soon. I haven’t seen this problem back on Fedora 20. There are also some other minor glitches, for example very occasionally there is a graphical artifact instead of some letter rendered on the web by Firefox. But that is very rare, can be fixed by highlighting the text and happens on Fedora 20 as well.
Update: The invisible icon bug seems to have been fixed the next day after I published this. I still see some issues, but they are most probably related to GNOME in general and not to radeonsi driver.
In general I’ve been very pleased by the recent development, the developers are responsive and they have improved the driver a lot recently.
I have some good news and some bad news. The good news is that the number of games that run and their performance have improved substantially. And I mean substantially. On Fedora 20 half of my Steam games crashed or there were some serious issues with them. Now only 10% crash (some of that might be caused by llvm 3.4, according to the crash messages) and another 15% are either slower or experience graphical issue. However, the majority now runs just fine. I attribute this mainly to the OpenGL 3.1/3.0 support. Here’s my updated list of Steam games I tested, compare Fedora 20 RadeonSI column with Fedora Rawhide RadeonSI column:
Performance-wise there have been some improvements as well, probably at around 10% or so in average. You can see the updated Phoronix Test Suite graphs below. The commercial games felt a bit better as well.
The bad news is that we’re still not there. The situation improved sharply, but there’s still a large percentage of games which can’t be played. The performance also varies wildly. For example Dota 2 was totally unplayable even with low quality settings, you could see 5-10 FPS easily in larger battles. On the other hand, Left 4 Dead 2 or Team Fortress 2 seemed very well playable (I spent max 5-10 minutes in these games, so the real gameplay results might vary).
If you want to play on Linux with an AMD graphics card and an opensource driver, you still need to be a modest gamer. You must not mind if some of your games run very slow or not at all. However, the recent progress has been very good and it seems that AMD together with community developers try real hard to provide a fully functional opensource driver. I’m very glad for that. Hopefully Linux users won’t need to choose between freedom (plus out-of-the-box functionality) and performance in the near future. By the way, I decided to keep the AMD card in order to support OSS-compatible companies.
Update: I have written a follow-up with my experiences from Fedora 23.