Given Windows’ dominant position in gaming, people often ask “Why does Stadia use Linux?” I decided to answer – to the best of my abilities, which does include a fair amount of data-center expertise and decades of gaming on Linux.
I personally believe Microsoft’s massive investments in gaming content in the last year has more to do with the threat of Linux in general to their bottom line than any specific competitor or product. Gaming is one of the main reasons people (consumers at least) choose Windows devices instead of alternatives like Mac OS, Chrome-OS, iOS, Android and other Linux based devices.
The threat of Linux becoming a cheaper alternative to Windows for gaming on all sorts of devices is real! Microsoft really doesn’t want to lose all those lucrative licensing fees. The Steam Deck uses Linux, Stadia uses Linux and Amazon Luna is hiring engineers to re-base their service on Linux. It’s probably just a matter of time before Steam operates their own cloud gaming service using Linux. The Playstation and Switch? They use BSD (another free Unix OS) under the hood…
So, let’s not bury the lead!
The cost of providing the same hardware/service in the cloud with Linux is way cheaper than Windows.
There are many reasons why Linux is a more flexible, light-weight, scalable, customizable and maintainable OS for datacenters built by the likes of Amazon and Google (e.g. the revolution in Kubernetes and containers/Docker). In the HPC world, for example, not a single one of the Top 500 computer systems runs Windows.
However, I believe the main issue for cloud gaming services is simple: Windows licenses are expensive! While Microsoft could possibly be subsidizing the cost early on, they certainly won’t want to forever.
To illustrate the cost difference, let’s look at the hourly on-demand cost passed on to the user for identical hardware instance types in AWS for the Linux and Windows OS. We discuss two different instance types, “t3“, which is based on recent Intel Xeon processors, and “g4dn“, which adds one or more NVIDIA T4 GPUs.
Instance Type | #vCPUs | RAM | Linux Cost Per Hour | Windows Cost Per Hour | Windows / Linux Cost |
t3.nano | 2 | 0.5 GiB | $0.01 | $0.01 | 1.74 |
t3.micro | 2 | 1 GiB | $0.01 | $0.02 | 1.74 |
t3.small | 2 | 2 GiB | $0.02 | $0.04 | 1.74 |
t3.medium | 2 | 4 GiB | $0.05 | $0.07 | 1.37 |
t3.large | 2 | 8 GiB | $0.10 | $0.13 | 1.28 |
t3.xlarge | 4 | 16 GiB | $0.20 | $0.27 | 1.37 |
g4dn.xlarge | 4 | 16 GiB | $0.63 | $0.82 | 1.29 |
g4dn.2xlarge | 8 | 32 GiB | $0.90 | $1.27 | 1.41 |
g4dn.4xlarge | 16 | 64 GiB | $1.45 | $2.18 | 1.51 |
g4dn.8xlarge | 32 | 128 GiB | $2.61 | $4.08 | 1.56 |
g4dn.12xlarge | 48 | 192 GiB | $4.69 | $6.90 | 1.47 |
g4dn.16xlarge | 64 | 256 GiB | $5.22 | $8.17 | 1.56 |
Also, note that Windows isn’t even an option when using Amazon’s own ARM based Graviton processors, the most economical instances at AWS.
You can see that, in the best case scenario, you pay 30% more for using Windows. And, in many cases, Windows nearly doubles the cost of the instance. This makes a huge difference in the margins for a cloud gaming service!
Now also remember that many Windows games definitely can run on Linux/Vulkan via WINE, DXVK and VKD3D, and you can see why Linux is a no brainer for a cloud gaming service going forward. You can also see why Microsoft is trying to hold on to its position in the gaming space by buying up content.