I have a brand new AMD graphics card and I assume someone might be interested in how it works in Fedora 20. This post summarizes my experiences with it.
A week ago I’ve bough MSI Radeon R9 270 GAMING 2G. It’s an upper mid-range card and most new games should run on it reasonably well on high details. In Fedora there are two choices – you can either use the default open-source radeonsi driver, or you can install proprietary catalyst driver. I have tried general system functionality and also a lot of games (through Steam) on both drivers.
RadeonSI driver
The GNOME desktop itself works without a glitch. Everything is fluent and I haven’t noticed any problems whatsoever. However, there are some other issues:
- You need to enable dynamic power management manually. Without DPM, the card runs at the lowest speed profile all the time. Enabling it is really simple, you just add radeon.dpm=1 to the kernel command line. From kernel 3.13 this should be enabled automatically. With DPM, the card automatically switches between low and high speed profiles depending on its utilization. DPM worked without problems for me. More information.
- GTK primitives rendering is extra slow. I stumbled upon this when I ran gtkperf test, gtk primitives (like lines and circles rendering) is 4 or 5 orders of magnitude (!!) slower than with catalyst (or the integrated Intel graphics card). Fortunately, these primitives are not used much. They were used in old GUI frameworks like Motif. However, you can still find it here and there, for example in some old software installers or in game settings dialogs (like Amnesia: The Dark Descent). Operating such interfaces is really slow. Unfortunately, there is one further example where GTK primitives are used, which is LibreOffice Calc. Even medium-sized spreadsheets are unusable with radeonsi driver 😦 I might still find some other problematic software, but up to date, I’ve found only the LibreOffice Calc to be a quite show-stopper. Freedesktop bug 68524, freedesktop bug 71813.
- Fan speed is higher than with Catalyst. It seems that there are three ways how to affect graphics card fan speed – there is a profile in its vbios, there is another profile in the driver and then there can be a user defined profile. The vbios profile kicks in during computer start and boot, the driver profile kicks in during operating system video initialization (setting graphical mode) and user profile can be enabled by a custom application. Radeonsi doesn’t currently support driver or user defined profiles, so only the vbios profile is used. Unfortunately, the manufacturer (MSI) set the default idle fan speed to 40%, so with radeonsi your fan speed will never go below that, no matter how cool the card is. It’s not loud, but it’s audible. With catalyst driver, the fan speed in idle is 18%, which is truly inaudible. Quite a pity. Freedesktop bug 73338.
When it comes to gaming, the current state is very very sub-optimal. Even though the usual open source games available in Fedora repositories (like OpenArena and Xonotic) run very well, a lot of commercial games simply crash. I suppose they require some OpenGL extensions that are not implemented in the driver, or they simply hit some bugs in the driver. If they run, the performance is quite bad. I’ve tested quite a few games and compiled a list showing how well they run, it’s available here. Basically any modern 3D game didn’t run for me (crashed or performed poorly). I’ve also made some benchmarks, see below.
Catalyst driver
If you want to use the catalyst driver, prepare for some serious headaches:
- The driver is no longer available in RPMFusion. The maintainer orphaned the pacakge and no other volunteer appeared. That means you’ll need to download the official installer from AMD website and install it with every kernel update. You won’t receive new kernel modules automatically from RPMFusion, nor you will have have akmod (automatic module compilation) setup easily for you. FedoraForums discussion.
- GNOME doesn’t work with Catalyst in Fedora 20. GNOME shell and apps were compiled with Wayland support, which uses libEGL library. Catalyst currently doesn’t ship this library, so all the software crashes. At least that’s my understanding. You can either use Fedora 19, or some other desktop environment (I don’t know about KDE, but XFCE should work; however, you still can’t use any of affected apps even in a different environment), or download packages recompiled without wayland support from untrusted sources (not recommended, and of course it also prevents you from updating your system). This sucks really hard, it’s a show-stopper for most people . FedoraForums discussion, RPMFusion bug 2914, GNOME bug 712340, AMD bug 949, Phoronix discussion.
- You can’t switch from game to desktop. If you hit Alt+Tab during gameplay (in games which support it), you don’t see the regular switcher widget. When you hit Win key (in GNOME), you don’t see the overview. Everything actually happens (you can tell because your mouse cursor changes), but you see the game all the time (even though your keyboard input might control a completely different application). This means that you effectively can’t switch your game and your desktop/other apps (even though it actually happens), because the image does not redraw.
Update: With Catalyst 13.11 Beta 9.95 this works much better. If you hit Win key, you see the overview mode and can switch applications. If you hit Alt+Tab, you see the switcher widget, but you need to operate it with a mouse. Sometimes it’s quirky – in Dota 2 I needed to hold Alt+Tab for several seconds to manage to switch, in Amnesia I saw a black screen for 10 seconds after returning to game, and Champions of Regnum behaved like an always-on-top window. Also in the overview mode the game thumbnail is not correctly updated. But generally it works. - Video overlays don’t work in Totem. If you watch a fullscreen video in Totem and wiggle your mouse, you don’t see any overlay widgets, even though you can click on them (blindly). So in order to jump forward or backward in the video, or adjust the volume, you need to unfullscreen it. I think this is connected to the previous problem, again it’s some kind of overlay over video/GL context and it is not rendered correctly. VLC works fine, though.
Update: This seems fixed with Catalyst 13.11 Beta 9.95. - You can’t control your desktop over VNC. If you set up a VNC server and connect to it, you won’t receive any screen updates (even if you want to force them from the client). You can click on stuff, but you see just a still picture. If you reconnect, you see an updated (and again still) image. VNC is simply unusable. I tried only the GNOME integrated server, it might work better with other servers, I don’t know.
Gaming is much better with catalyst driver. Most games work, and their performance is good. According to some online benchmarks, the Linux performance is still lower than Windows performance, but the gap is definitely smaller than between radeonsi and catalyst. With a few games I had graphical glitches issues and in some games I saw some stuttering (FPS is high but you experience mini-lags every short while). But in general it simply works. Again, the list of games with some notes is here.
Phoronix Test Suite
Because I’m a benchmark freak, I tried to run some tests and compare the results between radeonsi, catalyst, and my integrated Intel graphics card. I was looking for some automated way of doing it and I’ve found Phoronix Test Suite. It’s a neat piece of software, packaged in Fedora, and allowed me to simply (in an automated fashion) run a series of tests and even drew graphs of the results for me. It’s simple to operate and I really recommend it. Of course it has some rough edges, but what doesn’t.
Most of the tests consist of open source software, and as I said before, the radeonsi driver performs really well with those and generally doesn’t crash. So these results look quite optimistic in this regard. In real life, however, most commercial apps don’t perform as well or crash immediately, as mentioned before. I didn’t benchmark those, because it seemed as too much manual work. I think the current test set is enough for a simple overview. If you see a missing item in the results, it means that either the test crashed on that driver, or was so slow that I couldn’t finish it in reasonable time (the GTK primitives rendering).
Here’s a trailer of the result graphs. Full results are here.
Conclusion
The situation is far from perfect. I really understand why Steam survey shows only 1% of Linux players in its user base. It’s hard to play in Linux with such graphical drivers. I bought an AMD card because I wanted to support them in releasing hardware documentation and hiring opensource driver developers (they do both, same as Intel, and unlike Nvidia). Nevertheless after my week-long experience (maybe I should say misery?) I really considered swapping the card for Nvidia GeForce GTX 660 (same price, same performance). Still, I’m reluctant to do it. I had bad experience with binary nvidia driver in the past, and I have had utterly abysmal experience with nouveau driver in recent years. I don’t know if the nvidia driver has some similar issues with alt+tab switching, video overlays in totem or vnc redraws (or some other issues, I would be very interested to hear that in the comments), but I know for sure that I don’t want to end up with nouveau if I ever discover a show-stopper in nvidia driver. Radeonsi driver is definitely light years ahead of nouveau. Nvidia announced they would help nouveau last fall, they released a single piece of basic documentation, and since then I’ve seen exactly nothing to happen. They don’t seem to keep their promise. With radeonsi, at least I can try to help the driver by submitting bug reports, because the developers are not kept in the dark. And Marek Olšák has been doing some amazing improvements and fixes lately. And for gaming, there’s always… ugh… Windows.
Comments welcome.
Update: Read my follow-up article with the most recent radeonsi driver here.
Thanks for the review.
Did you notice a behavior like descriped here:
https://plus.google.com/109723801205039859708/posts/iWzWPAPZbZ8
Mouse hangs, Screen goes blank, Monitor says “No Signal”?
I have this problem with R260 and Gnome and Nouvau
Radeon R9 260 and R9 290 is based on a new hardware generation, unlike R9 270 (which is basically the same chipset as Radeon HD 7850). I don’t know if the same driver is used for 260, but the support for 260/290 is definitely very basic and not even handling 3D yet, from what I’ve read. I don’t recommend using Radeon R9 260/290 on Linux at all, at the moment.
For those games that are just crashing due to missing OpenGL extensions, have you tried installing libtxc_dxtn?
Yes, I have it installed, of course.
When you are considering 3D acceleration on Linux, the best choice remains Nvidia.
They have the best openGL support, and they also support Xorg and Kernel updates very early. I don’t think you will need to fallback to Nouveau drivers.
If you wan’t a pure opensource solution, then the second best choice is Intel. In either cases companies who have chosen to go only one way (binary only with Nvidia, or openSource only with Intel) are doing a globally better job than AMD who is splitting its efforts.
I think that the r9 series is a little too new. You’ll need to wait for a few months….
As I commented above, it’s quite complex. Only R9 260 and 290 are new chipsets. My experience is basically the same experience that I would have with Radeon HD 7850/7870, which is almost 2 years old.
Even though AMD is doing all this now, I still wont purchase another AMD card maybe until 2016, Nvidia always work for me, Intel too. If you want hell, stick with AMD, i had a HD 5770 for a few years all I had with it was PAIN, I envy my friend for buying the GTX 260 (at that time).
I got 7870 and its working great on linux. All the native games I have tried so far have been working with great fps. I had 7770 before and I wanted a bit more power under the hood, the fps did grow during amd graphic driver updates and when steam/dota got updates. I would say that don’t give up on amd just yet. The card is pretty new. Amd has improved a lot during 1 year with linux.
Thanks for your feedback. It’s interesting, because my R9 270 should be exactly the same as your card (same chipset, only slightly different clock rates), and I see so many games crashing. Well, with the opensource driver I mean, not with catalyst. What driver do you use? You haven’t mentioned that.
did you try running games like this? https://bugs.freedesktop.org/show_bug.cgi?id=71239
export MESA_GL_VERSION_OVERRIDE=3.2
export MESA_GLSL_VERSION_OVERRIDE=150
Forgot to mention… if you can and want to, please try using another DE + a compositor. LXDE + compton or KDE would be good examples for testing. I’m wondering if GNOME is to blame for the poor results (although I have NO idea if it should)
* for the poor results with the FOSS driver.
Shouldn’t the games be faster without a compositor, i.e. plain XFCE/LXDE? Why do you recommend using a compositor?
I’ll try to run the benchmark in one of these environments and amend the result graphs.
Steam crashes on start when I set those variables.
I was a fan of ATI for because they had similar to nvidia performance (unlike intel) and were fairly open about documentation and related. Unfortunately after several generations of cards I still had issues with video playback, and some kind of video memory leak or corruption. I’d be logged in for 3-4 days and large windows would start to fail to map. Then smaller windows. I could help for a short while by closing more windows, but inevitable I’d have to reboot. Anything graphics heavy (google earth, web/flash games, or native games) would inevitably cause some kind of instability. Anything even slightly intensive would have quirks, stutters, failure to switch to full screen, failure to switch from full screen, or failure to switch to console mode. I wouldn’t care about console mode, except the graphics locking so often.
I switched to a gtx760 and it’s been MUCH better. 1080P playback is great, no stutter, no crashes, games work great, etc.
I was hoping to get one of the Intel Iris Pro (HD5200) CPUs since it has a fairly nice GPU with onchip video memory. But I think it was mostly a paper launch, after many months I just started seeing the i7-4770r available in the last week, probably to offset the kaveri announcement.
I’m hoping with with AMD’s success on the Xbox One and PS4 that their drivers will get better. Although I’ve heard pretty negative things about steam related games on ATI as valve is ramping up for their console.
So I’m hoping for at least one of:
1) AMD drivers maturing
2) Intel GPUs getting as fast as mid range ATI/Nvidia cards
3) Nvidia opening their drivers.
What’s the last card that you had and which driver have you used (that caused the described problems)? Do you see any problems at all when using the nvidia driver?
I had a 4770, a 5770, and a 6850. I exclusively used the various current (at the time) catalyst drivers. AMD handled the driver updates poorly. Often they would claim something is fixed, and it wouldn’t be. Finally they stopped posting change logs.
Even the 6850 often felt slow, even simple things like moving a window with a video running in it seemed much laggier than my old 6600 GT from several generations ago.
Then they started partnering with ubuntu, so other distros had to either wait longer or extract the binaries from the ubuntu package.
Check out this for info on AMD GPUs and steam:
http://devgurus.amd.com/community/steam-linux
With nvidia things “just work”. I can game full screen on one monitor, and use the other monitor at the same time. Switching to text mode always works. Hangs or any type of graphics corruption is very rare. Nvidia-settings is pretty handy for controlling fan speeds, graphics quality, anti-aliasing, sync, monitoring temperatures, and per monitor configuration like vibrance, color corrections, and related.
The pending AMD kaveri looks like a very interesting chip from a price/performance perspective…. if the drivers improve.
Nvidia has run the steam games well from day one. Sounds like AMD is finally starting to get there. See:
http://www.phoronix.com/scan.php?page=news_item&px=MTU2NTA
Specifically mentioned as fixed:
* Poor in game performance
* malfunctioning return to desktop
* known problems including tearing and poor overlay performance
Sounds promising, and that those problems have existed for years though.
The AMD R9 cards are probably just not yet supported well enough by both, Catalyst and RadeonSI. Currently you are probably better off with a Radeon 6900 or 7000 series card. I use both, a 6950 with Catalyst and a 7970 with RadeonSI. What I can say is that gaming is *very ok* with the 6950+Catalyst. The 7970+RadeonSI supports only OpenGL 3.1, so latest games are a problem for that reason. What I can also say is that the RadeonSI drivers *have come a long way* during the last year. One year ago you could just forget about games with open-source, now you see first games working.
Give it another year and test your R9 again, you’ll probably have a different conclusion.
For the FOSS driver: You shouldn’t be getting the same performance with Fedora 20’s stock Mesa-9 and Mesa-10 on radeonsi. Something isn’t right there. Also to get proper support the card you really should upgrade to at least llvm-3.4 before building Mesa.
I downloaded mesa10 packages from Fedora 21 and installed them on my Fedora 20. Maybe I’m missing some other packages (like llvm) and should perform the testing on proper Fedora 21 instead. I just didn’t have time to create the dual-boot. But maybe I’ll get to it over the weekend.
I’m eagerly awaiting your results with F21.
There’s also the catalyst upgrade that SteamOS just triggered.
I have added new catalyst results to the article. I’ll add Fedora 21 results once it contains llvm 3.4 package.
Actually I never had a problem with Nvidia drivers. I’ve been packaging them since 2004 and performance and stability have always been top notch. I’ve also used them a lot in the old Compiz / Xgl days. Back when there was no XRandr et al, you could already do everything with their extensions and control panel.
There are a few things missing that have been introduced in the FOSS world last years, like KMS or UEFI secure boot enabled unless you recompile and sign your kernel; but the amount of features they have is incredible. Some features are now redundant (Twinview over XRandr) but they are still needed if you install the drivers on old distributions. I’ve been using them also on FreeBSD for years, and until recent 10.0 / CURRENT builds it was the only option, IMHO.
4k displays, all ports, audio over HDMI, top notch performance, power management, SLI setups, Video playback acceleration… you name them. And this without counting all of the CUDA stuff which I don’t use.
If I’m not buying something for gaming (like a laptop) I’m 100% confident on Intel and Radeon hardware using Open Source drivers (no custom installation, no weird kernel modules, everything works out of the box), but for gaming or latest display technologies, Nvidia it’s currently the best option. Nouveau is maturing a lot, I’m really impressed by it, but unfortunately I still have crashes and horrible performance almost across all setups.
Parts of the driver is open source indeed, even if RPMFusion does not package it:
https://github.com/NVIDIA
Some details about the usage I do with them:
http://negativo17.org/complex-setup-with-nvidia-optimus-nouveau-prime-on-fedora-19-2/
http://negativo17.org/nvidia-driver/
I was thinking of preparing a repository for the AMD driver along the lines of my Nvidia one, will you be interested in testing the packages for me? I don’t have an AMD graphics card to test.
I was planning to put any additional package required for Fedora inside the same repository, like rebuilt gnome-shell (if required) etc.
Regards,
–Simone
That sounds good. I would try to help you with that. Would you be willing to maintain the catalyst package in RPMFusion as well, not just your private repository? It seems like duplicating effort, although I understand that in some cases RPMFusion can’t be used (we can hardly provide rebuilt gnome packages in there).
Of course, provided that I don’t decide to return the Radeon card – I still have one more week to do that, with full price returned. It’s tempting, but I get really annoyed when I read Nvidia statements like this (while AMD is pushing for VESA standards as in DockPort, Nvidia publicly states that they don’t intend to “do the work for everyone”). And both radeonsi and catalyst driver seem to have improved substantially lately, hopefully it will continue.
I am very, very interested in testing any AMD packages you create.
I have a R9 270X here which works just great on radeonsi. What you need to get it running good is: mesa >=10.0.1, llvm>3.4 from git and kernel>=3.13-rc7. With this configuration all games I tried run perfectly fast and stable (xonotic, dota 2, Trine 2, TF 2, Surgeon Simulator, Brütal Legend and much more tested here). I also benchmarked TF 2: http://openbenchmarking.org/result/1401063-SO-TF2RADEON90
If you want me to test other things just tell me 🙂
Cool! Are you using Fedora 20 with backported packages, Fedora 21 or an entirely different distribution?
I use an entirely different distribution (Exherbo that is, similar to Gentoo), but that should not be a problem as I think fedora also supports experimental packages. The important ones are in my previous post.
Thank you for your input. Nevertheless, Kamil Páral’s newest post on the matter sadly paints a different story regarding DOTA2 and radeonsi. Here’s the link: https://kparal.wordpress.com/2014/01/16/amd-radeon-r9-270-experience-again-this-time-in-fedora-rawhide/
I would love to upgrade to a recent AMD card and use open source drivers as opposed to sticking with my current Nvidia card (a GTX 570) and using proprietary drivers but the performance has to be there. It does not have to be better just yet, but somewhat equal with the prospect of much better performance in the future.
Thanks for the info. I might end up buying a card and make some tests backporting the needed versions…
Fisrt thanks for your article and if you can test wine performance on this card, i suggest assasins creed brotherhood (this title runs slow and shows problems on AMD)
Luck with future articles
Yesterday there was a new Catalyst beta release (maybe just for me?:-)). I tried it and it improved game-desktop switching and fixed totem overlays. I’ve updated the article.
This will boost things quite a bit:
Section “Device”
Identifier “radeon”
Driver “radeon”
Option “ColorTiling” “on”
Option “ColorTiling2D” “on”
Option “SwapbuffersWait” “off”
EndSection
Also Hyper-Z should be coming soon (early patches already available AFAIK).
I confirm the problem with GTK primitives.
I suggest you to switch to LLVM git and mesa git as well as kernel 3.13.
Thanks for sharing. But I’m a newbie, wondering if you about toand switch to LLVM git and mesa git as well as kernel 3.13, can you update the post talk about how to do that and install RadeonSI driver on F20?
I’d like to see such guide myself 🙂 I’ll add Fedora 21 results once it has llvm 3.4 package (should be soon).
Great post.
Before you return your card, I’d wait for the BF4 patch with Mantle support. This should also show the promise of Mantle. Besides, Improving Linux support is AMD’s no.1 prio since they are squeezed between ARM and Intel. Also, their weakest point is driver development so solving this is critical to AMD.
Last year, AMD really showed their commitment to this strategy: Delivered on hadware (a little late, a little less), UVD VDPU, really improving OSS drivers, DPM, OpenGL improvements and many others. If AMD pushes forward, they will step up from HTPC(openelec, xbmc) to Steam and thus further Linux adoption.
I’ve read on Phoronix that a new branch for the Radion(Si) drivers is close to being released as next major release.
My advise:
Be a little more patience with AMD on Linux. Many and major changes while being resource constraint is to much for them. I costed a great while before the Brazos where Linux proof but later this was AMD’s best selling chip ever.
ps. XBMC statistics would also really help. As I understand, 1080P playback with HD Audio is working now with OSS drivers. This is also to current no.1 market for AMD hardware.
I have published a follow-up article after testing the most recent radeonsi driver:
https://kparal.wordpress.com/2014/01/16/amd-radeon-r9-270-experience-again-this-time-in-fedora-rawhide/
Hi. Could you please re-test this at some point on Fedora 20 at your leisure? We should have the partial fix for https://bugs.freedesktop.org/show_bug.cgi?id=68524 in updates now.
Hi, i wonder how you succeed to install official AMD driver (currently 14.3 beta) on your F20 and get it work ? I have a laptop, with AMD 8670 radeon HD, and with every kernel and every driver, I always get an “atiddxprobe fail” error when i try to startx (with good installation of the driver).
This is a well-known pb on the internet, and i red many howtos about that. But still didn’t find a solution 😦
Please, if you have any clue about this, thanks to share it !
Regards,
I haven’t encountered that issue. But since the time I wrote this article, I have given up on the catalyst driver, and I’ve been using exclusively the opensource one. Especially the current Rawhide version is much better than it used to be, with OpenGL 3.3 support. I might try catalyst again once they add EGL support and GNOME doesn’t crash with it. But until then, I recommend to simply use the opensource one, and use Rawhide if you want to do some gaming (and then you might even find out that you don’t need catalyst at all).
Thx Kamil for your answer 🙂
could you just tell me where to find the rawhide ati driver please ?
Regards,
You can’t just take Rawhide’s driver and install it on Fedora 20. Not easily. What I meant was “install and use Rawhide” 🙂 I wouldn’t be too much afraid if you’re a bit technical, it actually works!
But, ajax and airlied were discussing lately whether they could recompile the driver for Fedora 20. It requires quite a few changes in the distribution (newest llvm, obsoleting some packages in the middle of release life cycle, etc), but there is a strong chance that an exception could be granted in this special case (Fedora 21 is far, far in the future). Stay tuned to http://airlied.livejournal.com/ .
ok thx kamil, i’m sad to wait for an update one more time, but when we use fedora, it’s often like this
If you have news about that, let me keep informed there on your blog, i’ll come back regularly. thx !
Here you go:
http://www.phoronix.com/scan.php?page=news_item&px=MTY1Mjg
Great ! I see that, but not yet available on yum. Is MESA providing Gallium driver ? (my graphic card is actually recognized as “Gallium 0.4 on llvmpipe (LLVM 3.3, 256 bits)”), absolutly not powerful driver as is.
If you see ‘llvmpipe’ there, it means you’re using software rendering, not hardware rendering. Something is very wrong. Wait for the mesa 10.1 update, and if it doesn’t help, search/ask for help on irc/mailinglist/askfedora.
Hi Kamil, I see the new mesa is available ! But, i still have the same pb. Maybe you could tell me how to remove the gallium drive, or how to switch to mesa ?
Thx, i’m looking for answer elsewhere too.
regards,
Ask in #radeon on freenode irc. But, llvm 3.4 and mesa 10.1 is still not even in updates-testing. So I don’t know what you were looking at, but the update is not yet available.
The update is now in stable Fedora.
Thanks for your writeup on the Fedora 20 + GNOME 3.1x + Cataclyst issue. Let’s hope AMD will understand Wayland is on its way soon.
still doesn’t work, isn’t it ?
Hello. Good review, but i want to buy Radeon R9 290x 8GB . What do you think of it? Any opinion is welcomed. Thanks
Hello. I recommend you to visit http://www.phoronix.com/ and see some R9 290 benchmarks. From what I remember from the few last months, opensource drivers started to work with it quite recently, so you’ll need a bleeding edge distro at the moment. Catalyst drivers, on the other hand, have a huge performance gap when compared to their windows counterparts (much larger gap than older chipsets). So it really depends on what you want. In price/performance ratio, older chipsets are better. If you don’t care about price and either will use catalyst or a very recent graphics stack in your distro, R9 290 should work OK as well. (Just a note, catalyst doesn’t work on recent Fedora releases.) In any case, I recommend searching around the web a bit. Phoronix and its forums is a good starting point.
AMD is definitely a good company to support regarding Linux-friendly approach, especially lately (they even announced their plan to have a fully open kernel graphics driver). Their drivers are still not that great, though. But the opensource one is advancing very quickly forwards, and of course is incomparably better than nouveau. With proprietary drivers, it’s usually the other way around.