Poor Gaming Performance in Linux

Running Lubuntu 14.04.

PC specs:
AMD Phenom II X4 955 BE
Asus M4A79T Deluxe motherboard
2x2GB Kingston 1333 DDR3 ram
WD 500GB HDD
Windforce HD7950 3GB GPU
Enermax Infiniti 720w PSU

I'm running what I believe to be the latest AMD proprietary drivers. I followed the instructions exactly on how to install the latest Catalyst drivers from AMD.

Running Day of Defeat; Source - a source engine game, I'm only getting about 40fps, maybe spikes to 50, but mostly between 35 and 45. I'm running it on a 1440x900 display and it doesn't matter if I have the graphics settings on ultra or low. Frame rates stay the same. On my main PC running windows with an i5 and R9 290 I'm getting nearly 300fps. Source games are easy to run and should be running far better than it is on this hardware, IMO. If I'm wrong, please educate me, I'm here to learn. :)

Other games I've tried are Trine 2, which runs on ultra at about 30fps, again, should be higher, no? Metro last light runs around 25-30fps regardless of graphical settings (they only give you a slider in the Linux version).

I have a hard time believing these games are CPU-bound. The Phenom II 955 is not THAT bad - about on par with the FX-4300 and Athlon 750/760/860K of today from what I understand.

Or am I bound by ram? I know 4GB isn't a lot, but Lubuntu is extremely light on ram (uses less than 200mb at system idle) and I can't see a source game hogging up that much.

Or is it just that these games simply aren't well optimized to run natively in Linux?

I can stream Shadow of Mordor at 40-50fps on this machine, which is running at 4K very high/ultra settings with VSR on my main rig, without a hitch butter-smooth.

Any suggestions, recommendations on how I can get better gaming performance on this machine? I am planning to double the ram (to 8GB) very soon.

Thanks,

MEC.

The painpoints with your setup are the CPU and GPU.
I run on Phenom II X4 965BE and used to have HD7870 - only Source engine games ran OK. Dota still ran like crap. (sorry, but this has to be said)
Even though Linus flipped off nVidia for their driver support, the performance is way superior on nVidia drivers. Have a peek at Phoronix's Bioshock: Infinite benchmark results as an example:
http://www.phoronix.com/scan.php?page=article&item=bioshock-inf-18&num=2

I upgraded to a rather cheap GTX770 and the performance pretty much doubled, if not even further.
The whole issue is that AMD does not push their Linux driver support enough to get the driver overhead to a minimum. nVidia doesn't push it too hard either, but they have been making great progress and the performance has gotten pretty good over time. Issue also lies in OpenGL and how messed up it has become over the years.

What I would suggest to do, is to get an nVidia GPU (unless you really love AMD) and see how much you gain. CPU will be a bottleneck soon as well, but Trine2/Dota/DoD:S should run without any issues while being maxed out. (that's what I get with GTX770 and 965BE)
Other than that, we will have to wait for the Vulkan be finished and implemented correctly, then, we shall see performance which could be on-par or ever better than the performance we get on Windows.

//I accept criticism, I am no h4xx0r but this log is just about what I have experienced... take it as you will. :)

Yeah as it stands AMD's driver support is pretty bad on Linux, but AMD is hiring a lot of employees to work on Linux drivers so better support will come, but as it is right now Nvidia has a leg up on the game. I imagine things will look a lot brighter come November though.

Thanks for the quick replies. :)

Ok, so what both of you have told me thus far has been contrary to what I had been told and have read not too long ago with regards to graphics drivers. From what I understood, it was AMD that had better drivers, not Nvidia. I'm guessing within the last 6 months or less, that has changed?

I'm not brand biased at all. The 7950 was my old GPU I kept after upgrading to the R9 290 (which I got a really good deal on). So the 7950 was free. That whole machine I listed in the OP only cost me $200 to build. :)

Anyways, if Nvidia drivers are that much better, I might consider selling the 7950 and picking up a cheap used 770 or something.

I guess it goes to show how much drivers effect performance if a strong GPU like a 7950 can't plow through a low-demand game and still deliver solid frame rates. On my windows machine, this 7950 was able to crush just about anything at 1080p on ultra.

Regardless, thanks again for your input. Would like to hear from a few others and get some more opinions on the matter. If the general consensus is to swap to Nvidia, then perhaps that's what I'll do.

i think you might know about this, but try using open source drivers when using an amd card. i read some where that the open source drivers are better than the proprietary ones, unlinke nvidia.

You'd be right, the open-source drivers for Nvidia are pretty bad, but the AMD one's typically fair well depending on what card you have.

i didnt know it depended on the card, but i use r9 290x for now and im looking forward to buy the r9 390x or perhaps r9 380x, which one is better to work with the open source or the proprietary ones ?

I'll try to explain the situation in a short fashion...

The proprietary ATi / AMD driver on Linux has been really bad for more than a decade by now (in another words since they even began releasing them). And the original AMD free and open source software drivers which were reverse engineered were even worse in many ways.

The proprietary nVidia driver on the other hand has been extremely good ever since they started releasing it for the Linux. nVidia's proprietary driver offers the best 2D and 3D performance on GNU/Linux even today. And has offered since the beginning of the time. As a side effect the free and open source drivers for nVidia hardware have been average at 2D rendering at best and never fully capable of 3D rendering.

Eventually things got to the point that individual users and companies who need 3D on GNU/Linux had only one choice. AMD's situation was grim at best. In hopes of improving the situation in 2007 AMD started releasing information (without requiring NDAs) about their hardware specifications to free and open source software communities who were developing free AMD drivers. AMD also started supporting those communities in their effort to produce good AMD driver. Nowadays free and open source AMD community driver "Radeon" isn't reverse engineered, and is based on the actual the AMD hardware documentation.

The "Radeon" driver and its many parts are fully capable in both 2D and 3D rendering. Albeit the performance isn't as good as the AMD's proprietary Catalyst drivers on Windows and Linux. But that the reason why AMD is preferred when you want your system to utilise as few as possible proprietary software and hardware components.

The newest free and open source driver for nVidia hardware is called "Noveau". It isn't as fast yet as "Radeon" driver in 3D performance (to my understanding), but it's getting there. It has been reverse engineered but is a very solid free driver for 2D. Recently there has also been major steps in enabling good 3D rendering in the Noveau driver.

However unlike AMD, nVidia is very protective of their hardware and software. nVidia also has attitude problems. nVidia offers very little support to the Noveau driver. Originally they didn't help at all. Nowadays nVidia does sometimes help the Noveau developers with patches and giving parts of documentation. That started happening partly because of AMD's more FOSS friendlier approach but also because nVidia lost a major deal in China. It's also notable that one of the things that made nVidia more cooperative was because Linus Torvalds came and publicly complained about nVidia's general attitude towards free and open source software, nVidia's Tegra drivers for Linux, and lack of support from nVidia for nVidia Optimus on GNU/Linux:

However situation at the moment still remains largely the same as it has been for the past ten years. While AMD's situation has clearly improved and their attitude to free and open source development has scored them both Playstation 4 and Xbox One, and some other major deals. And while in-general free and open source users tend to feel passionately about AMD because they deliver freedom that nVidia is unable to deliver. The "Radeon" driver and the AMD proprietary driver for Linux are unable to deliver good performance. And the AMD drivers tend to be more complicated to use and maintain (based on my experience).

AMD drivers are nowhere near the nVidia's closed source proprietary drivers in both 2D and 3D performance. And I am not even talking about the loads of additional features that come with the nVidia's proprietary drivers compared to the few extra things that come with proprietary AMD driver.

If you seek top performance then nVidia is the only option you have. AMD just isn't delivering at the moment. And probably will not deliver for the next decade or so. Especially with nVidia now starting to assist people who are writing the free and open source driver for nVidia's hardware.

I've burned my fingers so many times with Radeon cards that I won't even consider them any more because I mostly run Linux in one form or another. If you want stable drivers, with good performance, and with set of useful extra features, then the nVidia is the only choice you have.

PS. It's noteworthy that the Bioshock: Infinite on Linux is not a native port but instead is Windows version that runs on top of eON WINE-like wrapper. And that has certain... implications... on the performance when trying to do benchmarks.

Edit: I fixed typos and added few sources.

Edit: More spelling fixes.

There is no way to know for sure right now. It really all depends on the interest of those developing the drivers.

now you'll know how i got my profile gif :P

You should improve your grammar. And the Aalto University's talk event was pretty good in overall. I recommend you guys watch it in full length if you're interested on all things free software and opinions of Torvalds regarding various things.

1 Like

i watched that video a long time ago, what are u talking about? i never meant that, im just saying

I saw a leaked rumour that AMD plans to make the proprietary driver opensource so it can be implemented into the kernel on AMD hardware.. if thats true.. it would be trully amazing

Your poor grammar in your reply to me. I've know about that video since 2012. I'm confused about why you wrote that I will now know about it as if I haven't seen it. I think that you meant that you will soon know what the source for the video is. Or something like that.

Edit: And if you want to know more about the nVidia's free and open source driver situation then the Wikipedia has an nice section about it in their article about free software drivers.

Wow, lots of great information guys, thanks very much! :)

That clears things up quite nicely for me. I'd been so confused about it before because from some people I heard AMD was better to use and from others, Nvidia was better and both sources were/are experienced Linux users, as far as I know.

Anyways, so now I'm wondering if I should switch to Nvidia GPUs or stick with the 7950 for now...? It's probably going to be some time yet before those "new" AMD drivers become available.

I'd say, when Linus Torvalds and Elon Musk start talking, we should listen to what they have to say....

I didn't say you should take what they say for granted... But refusing to consider their insight on topics in their fields of interest is short-sighted to say the least.

Torvalds and Musk are worth lsitening to no matter who you are... Their insights are very revolutionary.. to ignore them is to ignore possibility or greater understanding of differing view points @swick

Depends on what you do on the machine. If you're going to be playing many of the high performance requiring 3D games that are available for Linux then I'd say yes. Switching your current Radeon card to a comparable nVidia card and using the nVidia proprietary drivers can easily double (and in some cases triple) the performance.

If you're going to do casual Linux use and occasional Linux gaming then you probably should not do the change. AMD drivers are perfectly fine for most of the common desktop usage scenarios these days. And AMD has improved the things a lot compared to the ATi days.

However I personally don't believe that AMD community is going to get their stuff working any time soon based on my past experiences. I've been using Linux for a really long time and I just cannot recommend ATi/AMD stuff to anyone who is interested in 3D gaming, 3D modelling, scientific computing, etc.

I'd like to point out that nVidia's driver offers more than just a good performance. nVidia's driver also come with solid stable support for things like OpenCL, CUDA, PureVideo (VDPAU), G-Sync, and so on. Both Blender or Wolfram's Mathematica work well with CUDA. nVidia's driver is stable, fast and feature rich.

And while I mostly agree with you that nVidia as a company doesn't earn any respects due their attitude issues with free and open source software. Not to mention their occasionally weird business decisions that directly or indirectly harm consumers. Despite of that I'd still say that they do get at least my respect from having a working Linux support since the late 90s when nobody was doing it. And not only that but delivering a stable performance across the board for 15 years. And they do deliver what they promise and usually on time.

If you want pure performance in gaming on linux you need nvidia. If you like me however care about if a company is open source/technology friendly then AMD is kinda the way to go for a video card. Yeah nvidia is helping the free nvidia driver some, but that can't make up for their other recent shenanigans.