Now that Steam has the ability officially to override a Linux game and run it through Steam Play instead, let's take a quick look at some differences in performance.
Before I begin, let's make something clear. I absolutely value the effort developers put into Linux games, I do think cross-platform development is incredibly important so we don't end up with more lock-in. However, let's be realistic for a moment. Technology moves on and it's not financially worth it to keep updating old games, they just don't sell as well as newer games (with exceptions of course). The intention with such comparisons is not to favour any developer or any method of gaming on Linux. It’s just to show what’s possible, what the differences are, what doesn’t work and so on. As the years go on, there will be more ways to run older games better and better, of that I've no doubt.
I'm not a zealot for any one particular method of gaming either and as a fan of all things gaming, software and technology, I thought it might be interesting and hopefully you do too. The tests were attempted on some games that have a Linux version, while also being games that are quite heavy on your system.
Note: All tests done at 1080p on Ubuntu 18.10, with the NVIDIA 415.25 driver and my 980ti with Proton 3.16-6.
First up, let's take a look at Tomb Raider (2013) which arrived on Linux back in 2016. Since Tomb Raider has a handy built-in benchmark tool, we will start off simply by showing the results:
Benchmarks also only tell one part of the story. In the case of Tomb Raider, through Steam Play it needed to run through entirely at least once or there was quite a lot of stuttering which wasn't the case in the Linux version. However, the Linux version has parts of the game where performance dives a lot and the Steam Play version is better there. To Feral Interactive's credit (who ported it to Linux), their later ports are miles ahead of this.
Sidenote: For the videos, the titles "Steam Play" and "Linux" show their corresponding videos to the side, in case that wasn't clear.
In the case of Cities: Skylines which released on Linux back in 2015 at the same time as the Windows version, testing out the "Benchmark" map from the Steam Workshop resulted in something I didn't expect. The performance was very close but the Linux version was noticeably smoother with a couple of extra FPS.
Either way, a big city doesn't perform well no matter how you do it. I should note here too, that even though the Linux versions performs slightly better it does eat up quite a bit more RAM.
Next up, MXGP3 a rather new Linux port from November 2018. Given how it's quite new, I honestly would have thought it would do reasonably well. As noted in my previous article, the performance of the Linux version isn't very good and Steam Play blows it out of the water.
Not a pretty picture, with the official Linux version struggling at times to even hit 30FPS it makes it difficult to control. It's also not a very good game but that's a different thing altogether…
Dying Light is up next, a personal favourite of mine. Also no benchmark mode I could find for the Linux version, so a comparison video keeping it as close as I could:
As you can see, both versions work quite well. I've completed the game more than once and I was actually happy enough with the performance of the Linux version, it was good enough and playable. However, the Steam Play version with Vulkan is at times around double the performance of the Linux version which is quite striking.
Next up, I tried Total War: WARHAMMER II. A Linux port from Feral Interactive released only in November last year. This would have been quite an exciting comparison, since the Linux version uses Vulkan. First issue encountered when trying it in Steam Play, is that it gives you a completely blank white launcher, so you need to opt into their new launcher beta which does work in Steam Play.
So you hit play on the fancy new launcher, guess what happens next? You get a brief moment of life, a glorious flash of black…and then it just quits to the desktop. Happens across both Proton 3.7 and 3.16. So, Total War: WARHAMMER II in Steam Play is a dud whereas the actual Linux version does work rather nicely.
The curious one is Rise of the Tomb Raider, I've been told this should work in Steam Play to do a comparison. However, it faced the same issue for me as Total War: WARHAMMER II. A black screen for a moment and then it quits on me. I have sent a log to the creator of DXVK for that, maybe it will help somewhere. Again, the Linux version from Feral works nicely.
The testing in this article was going to be longer, I had some grand plans for doing a lot of comparisons. However, Steam Play is still in beta and it has an uphill battle ahead of it. Rise of the Tomb Raider, Total War: WARHAMMER II, Civilization VI, Deus Ex: Mankind Divided and BioShock Infinite didn't work at all in Steam Play across both Proton 3.16 and 3.7 but the Linux versions do work. Sad about not being able to test more, but it's an example of how a supported release is the better option for certain games (especially multiplayer games like Darwin Project) and not the answer to everything as some claim. Great as an option but not quite ready for prime time overall, it will be fun to watch it evolve over this next year.
As I've said before though, with Steam Play it's not just a case of squeezing out extra performance. It's also a question of support and features of the Linux version (gamepad support, fullscreen issues, missing graphics options and so on). From a performance standpoint though, it shows clearly Linux can be a gaming platform that performs well.
The biggest question in my mind is: do you really get any true support with games you purchase to play in Steam Play? What exactly are you paying for? I don't really have an answer for that. For a purchased game, the developer (you would think) would be focused on it and fix issues as they come up. With Steam Play though, it covers such a massive list you could end up waiting a while for a fix (if it's possible at all). Thankfully, Valve has made a good step towards stopping Steam Play updates breaking games, since the latest Steam client beta no longer overrides the Proton version for a game in the whitelist.
I may do more tests in future, if readers want me to you will need to let me know what games you want to see tested (they have to have a benchmark mode in the Linux version). We still don't have a decent amount of Linux games that actually do have a benchmark mode, so it does make such a thing rather tricky to get a lot of value out of it and comparison videos eat a huge amount of time for even the most basic rough editing.
If you wish to support GamingOnLinux, we have many options available see here.