I’ve followed Google’s effort to bring native Steam gaming to Chromebooks since Project Borealis launched. Borealis, currently available in a limited beta, runs the SteamOS platform inside a VM. That’s how Linux on Chromebooks works, although a container is also used. But even the most powerful Chromebooks with integrated GPUs don’t run Windows PC games through Steam very well. I figured for Borealis to reach its true potential, dedicated GPUs in Chromebooks would be needed. And I found several clues indicating that Chromebooks with Nvidia GPUs for Steam gaming are in the works.
Chromebooks with Nvidia GPUs for virtual machines
To be clear, I haven’t yet found all of the details of such Chromebooks. It’s possible these will have ARM processors with some type of Nvidia GPU integration; a prototype of such a system was shown off back in 2021. Howeve, I suspect Chromebooks with Nvidia GPUs to be paired with Intel processors. PC games need the kind of horsepower found in 12th gen Intel processors or the games will bottlenecked by the CPU, regardless of the graphics solution.
Here’s a key example of what I found. This recent code commit for the ChromeOS vm_tools used for managing virtual machines is called “Add scripts to bind dGPU to different drivers”.
What follows is a partial description of what’s changing, along with my own highlights of key words:
Add logic to specify whether dGPU should be bound to VFIO modulev or NVIDIA module on next reboot. This same script can be invoked by vm_concierge too before starting borealis to rebind NVIDIA dGPU to vfio-pci driver.
Obviously, dGPU means a discrete GPU. Chromebooks today use iGPUs, or integrated GPUs, typically from Intel, AMD or various ARM brands. In context, this means ChromeOS is preparing to support dGPUs for the first time. The Nvidia module reference is also obvious.
The vm_concierge mention relates to how ChromeOS allocates hardware and software resources to a VM on a Chromebook. It gathers up the appropriate resources and allows crosvm, the minimal virtual machine written for ChromeOS, to use them. Again, this is how Linux on Chromebooks works.
And then there’s Borealis. It’s right there in plain sight! We know what that is: It’s the project and environment that Steam gaming on Chromebooks runs. It’s hard to think this could be anything other than Chromebooks with Nvidia GPUs for Steam.
Google is working directly with Nvidia
Also of note is that this code change, and several other related ones, are authored by Vaibhav Vyas. Who’s that? Well, the code commit shows his name with an nvidia.com email address, so we know he works at Nvidia. In fact, a little digging told me that he’s a Senior System Software Engineer there.
James Jones from Nvidia is listed on some of the code changes I found as well. According to his LinkedIn profile, he’s a Principal Software Engineer for the company. Lo and behold here’s what he currently works on:
I work on the userspace portion of the Linux Graphics Drivers, developing and porting EGL, GLX, OpenGL, Vulkan, X11, and video decode drivers for our GPUs, and represent NVIDIA at Khronos for System Integration issues.
That sounds exactly like the kind of activities one would be doing in support of the Linux-based SteamOS on Chromebooks, no?
To complete the trifecta here is Aaron Plattner, another Nvidia software engineer. What does he do there? “Linux graphics drivers, interaction with x.org and other open source projects,” according to LinkedIn.
Open source drivers for Nvidia cards and Chromebooks
Let’s say you’re still not convinced that Chromebooks with Nvidia GPUs are coming. I’ll add a third piece of evidence that might change your mind. And it’s from the exact same code commit above with the relevant text shown below. Again, I’ll highlight the important bit:
Ensures vfio-pci module is loaded before NVIDIA drivers, nouveau driver, intel sound driver (snd-hda-intel) and eXtensible Host Controller Interface (xHCI) drivers,
Yeah, I didn’t know what nouveau driver meant either at first. Google, once again, came to my rescue.
Over at freedesktop.org is an effort called Nouveau. What’s the project for? Creating an accelerated open source driver for Nvidia cards. Hmm…. open source, like ChromiumOS?
That’s the main, freely available operating system that ChromeOS is built on. Google puts some features in ChromiumOS and adds their own internal bits for ChromeOS. Adding nouvaeu drivers to one, or both, of these systems is how Google creates ChromeOS.
Still more to come about Chromebooks with Nvidia GPUs
Note that this is really just the tip of the iceburg from what I’ve found so far. I have yet to delve into all of the relevant ChromeOS code changes, but I’ll be doing so over the coming days and weeks. And I don’t know far more than I do know. I can’t yet tell you what integrated Nvidia GPUs in Chromebooks will be used, for example.
They could be old RTX 1660s or new RTX 4090s as Nvidia makes laptop versions of those cards. I have an RTX 3080 in my custom built gaming PC and Steam gaming is incredible with it. But that’s a desktop card that uses more than 200W of power, so a Chromebook wouldn’t use something like that. Perhaps, like my Dell XPS15, we’ll see an Nvidia RTX 3050Ti meant for laptops inside a Chromebook. Who knows?
Either way, stay tuned as there’s more to come.