With the Legion Go S, we can now directly compare performance between official builds of SteamOS and Windows
-
I mean, yeah, but if Proton is doing an absolutely flawless job, then it has 0 performance penalty compared to Windows. All the actual gains still do come from Linux having less overhead. So, both are true, that Proton is killing it and that the gains come from Linux.
DXVK (which also runs on windows) alone gives you a huge performance benefit. Playing world of warcraft on windows I'll see about a 30% reduction in CPU usage and higher performance.
Proton doesn't just get you to almost matching Windows' performance. Proton easily outperforms windows even on higher end hardware where windows bloat isn't a concern.
-
Proton is the compatibility layer that valve makes that lets you run games on Linux. Proton uses DXVK a program that converts Direct X API calls (windows only) to Vulkan API calls (runs on anything). DXVK alone gives you huge performance benefits (especially on older DirectX 11 and older games) and you can run it on windows.
Proton gives you a ton of other tools that can make huge performance differences.
Hopefully not a dumb question: If Vulkan runs on anything, assuming their game isn't a Windows (Xbox?) exclusive, why don't more people program their games to use Vulkan instead?
-
The big thing though about Proton is that it's not an additional translation/emulation layer. It doesn't translate into Spanish for Linux, as that would be slow, it makes Linux talk English.
So in your example, imagine you, the English speaking program, want to catch a taxi in Madrid/Linux but all taxi drivers speak only Spanish. An emulation layer would be "translating", so you would have an additional guy in the taxi that you could talk to that talks to the Spanish driver. Proton is not that, it's an English-speaking taxi driver.
I think the example you're using is closer to emulation.
I'm not an expert by any means, most of my technology experience comes from hardware. But Proton isn't changing the Linux ecosystem, and the programs are still expecting a windows environment when they're run via Proton.
From what I recall, Linux and windows can both do the same stuff, they just have different names or different ways to ask for resources. And Proton receives the request for whatever and converts it to the Linux equivalent.
It's not nearly as bad as it was in the past, now that the graphics APIs are system agnostic.
-
The only game in the main post photo where Windows beats Linux is Spiderman 2, published by Playstation Publishing, owned by Sony.
Ah, I missed that. Thanks for explaining
-
the gains come from the reduced overhead that linux has compared to windows
literally the next line
..the games here are being run through proton
I really hate the dismissal of the heavy lifting proton does. Proton is what makes gaming on Linux so great. So many native linux games perform worse on Linux vs their windows counterparts. Then again, I'd expect nothing less from Dave2D
Yeah its wine/proton and linux together. Wine/Proton efficiently handles translating the Windows programmes API calls into POSIX calls while Linux seems to offer a lower OS overhead so there is more system resource available for the games.
I do think Proton gets a little too much credit. Its wine plus faudio, dxvk and other open source projects combined. Proton is great but it is standing on the shoulders of giants.
-
Proton is the compatibility layer that valve makes that lets you run games on Linux. Proton uses DXVK a program that converts Direct X API calls (windows only) to Vulkan API calls (runs on anything). DXVK alone gives you huge performance benefits (especially on older DirectX 11 and older games) and you can run it on windows.
Proton gives you a ton of other tools that can make huge performance differences.
I'll add for completeness that vkd3d-proton handles DX12 titles, and of course OGL and Vulkan are supported natively.
-
Hopefully not a dumb question: If Vulkan runs on anything, assuming their game isn't a Windows (Xbox?) exclusive, why don't more people program their games to use Vulkan instead?
That my friend, is entering operating system politics.
But the TLDR is: resistance to change, lack of support, bribery, a combination of all 3, features, and much much more!
-
I'm not sure what you're saying. Proton is incredible obviously, but by itself it doesn't make games run better. Using vulkan instead of DirectX could improve performance, but presumably most of the performance gain is from not running windows in the background.
It's a bit of both, along with the Linux AMD drivers being superior in many cases to the Windows drivers.
-
I also find it interesting that the Steam Deck OLED has a smaller battery but gets longer life on the same OS
wrote last edited by [email protected]Valve did a lot of work to tune the APU in the steam deck for efficiency. It's custom silicon at the end of the day.
AMD just kinda took one of their existing laptop APUs and threw it into handhelds instead of laptops.
-
Hopefully not a dumb question: If Vulkan runs on anything, assuming their game isn't a Windows (Xbox?) exclusive, why don't more people program their games to use Vulkan instead?
It's becoming more common, but it mostly comes down to available tooling. At this point all three of the big game engines have a Vulkan backend available, but that's a fairly recent development. And if a developer isn't using a game engine, writing their own openGL renderer is easy, and writing a Vulkan renderer is a nightmare.
-
Source is this video:
Windows Was The Problem All Along - Dave2D
We could obviously compare performance between windows and steamOS before on the steam deck, or between windows and Bazzite on other handhelds. But this is the first time we have had official windows and SteamOS builds for the same hardware.
Now what about windows 10 ltsc iot, the ONLY version of windows worth comparing to linux.
-
Hopefully not a dumb question: If Vulkan runs on anything, assuming their game isn't a Windows (Xbox?) exclusive, why don't more people program their games to use Vulkan instead?
Vulkan is designed to be closer to the metal than something like DirectX 11 or OpenGL, which makes the API more explicit and difficult to use. This means it requires a great deal more care to use properly. And to complicate matters more, subtle bugs that are very difficult to debug are very easy to introduce.
But, this applies mostly to devs who build their own tech. Most of them these days are just using 3rd party engines like Unity or Unreal, so it comes down to whether or not the person making the game decides to check the box to use Vulkan and just how good those render backends are. Engine developers of 3rd party tech have to build their stuff to be as generic as possible. That's likely gonna add a lot of bloat that might not be fully optimized for every game developer's use case.
TLDR: It's tough and time consuming for someone writing it themselves. And for the ones who aren't, they're having to place a lot of trust in a renderer that is probably a black box and might be buggy/slow.
-
It's becoming more common, but it mostly comes down to available tooling. At this point all three of the big game engines have a Vulkan backend available, but that's a fairly recent development. And if a developer isn't using a game engine, writing their own openGL renderer is easy, and writing a Vulkan renderer is a nightmare.
Also a lot of old proprietary game engines were written either specifically for DirectX or additionally for DirectX because in the olden times it was the most advanced and compatible rendering software.
Then, those developers move forward in time to work on other engines and focus primarily on DirectX because it’s still good, compatible, and it’s what they know best. OpenGL languished and it took a while for Vulkan to come out, catch up, and standardize their API.
-
DXVK (which also runs on windows) alone gives you a huge performance benefit. Playing world of warcraft on windows I'll see about a 30% reduction in CPU usage and higher performance.
Proton doesn't just get you to almost matching Windows' performance. Proton easily outperforms windows even on higher end hardware where windows bloat isn't a concern.
While proton enables that, that's still just vulkan outperforming DirectX.
So technically proton isn't improving performance here, it's just allowing the game to run on better performing systems (like Linux and vulkan).
-
Now what about windows 10 ltsc iot, the ONLY version of windows worth comparing to linux.
IMHO you shouldn't have to run a stripped down Windows to get good results. It should just work that way out of the box. LTSC is not supposed to be a consumer OS.
-
Source is this video:
Windows Was The Problem All Along - Dave2D
We could obviously compare performance between windows and steamOS before on the steam deck, or between windows and Bazzite on other handhelds. But this is the first time we have had official windows and SteamOS builds for the same hardware.
A performance uplift plus double or tripled battery life compared to running on Windows.....hot damn that's impressive.
Get rekt Windows.
-
Source is this video:
Windows Was The Problem All Along - Dave2D
We could obviously compare performance between windows and steamOS before on the steam deck, or between windows and Bazzite on other handhelds. But this is the first time we have had official windows and SteamOS builds for the same hardware.
The speed of Linux is unmatched!
-
I think the example you're using is closer to emulation.
I'm not an expert by any means, most of my technology experience comes from hardware. But Proton isn't changing the Linux ecosystem, and the programs are still expecting a windows environment when they're run via Proton.
From what I recall, Linux and windows can both do the same stuff, they just have different names or different ways to ask for resources. And Proton receives the request for whatever and converts it to the Linux equivalent.
It's not nearly as bad as it was in the past, now that the graphics APIs are system agnostic.
Well, technically speaking, neither would be emulation because both systems are running on x86.
-
IMHO you shouldn't have to run a stripped down Windows to get good results. It should just work that way out of the box. LTSC is not supposed to be a consumer OS.
I think it's a valid comparison request due to some things just flat out not being compatible with Linux.
-
If you want something capable of running at an actually steady frame rate I'm not sure any computer can accomplish that without some serious tweaking.
Also if you're wanting to play on deck you might try this guide.
thanks, bookmarked for when it goes on sale. none of my hardware is acceptable enough for the specs.