Linux Gaming: Boost your performance with GameMode

The two biggest issues Linux gamers have had to deal with have been a lack of supported games and the occasional performance issues. While Valve’s Proton has helped mitigate the first one, Linux still sees benchmarks that lag behind Windows. That’s where GameMode comes in.

What is GameMode?

GameMode is a piece of software developed by Feral Interactive. The developers over at Feral have been nothing short of outstanding toward Linux gamers, helping port a number of titles over to Linux. The reason you can play Shadow of the Tomb Raider, DiRT 4, and Life Is Strange 2 on Linux is solely due to their great work – thanks Feral!

The Github page for Feral Interactive’s GameMode.

So what does GameMode actually do? To simplify things, GameMode is a low-resource program that runs in the background while you’re playing your game, optimizing the Linux operating system and kernel to get more performance out of your game.

How To Install

Installing GameMode is a simple, one-step process, but the installation method varies depending on your Linux distribution. I recommend checking out the instructions for your distro on Feral Interactive’s official Github page. Whatever your distro, it’s essentially typing a single command into the terminal to run your package manager and install the software. Easy!

How To Configure

If you want to change options in GameMode, there’s no bloated GUI with a tangled mess of radio buttons, drop down menus, and checkmark boxes – just a single, text-based configuration file. That may seem strange if you’re coming from Windows, but keeping things simple is the Linux way!

To set it up the config file, you can copy the example .ini Feral Interactive has up here - and save it as “gamemode.ini in the “.config” folder under your home directory. If you’re not sure what or where your home directory is, it’s the folder under the “/home” directory that shares the same name as the user name you created when you installed Linux.

My GameMode config file, as seen in Vim, a terminal text editor.

There’s a bunch of options you can change in this file, but you really only need to worry about three. Make sure “desiredgov” is set to “performance” - this will instruct the Linux kernel to set the CPU governor to its highest possible performance mode and disable powersaving features while you’re playing a game. The “Softrealtime” value should be set to “auto” - this will enable the Linux kernel scheduler (the thing that assigns priority to an application’s running threads, determining the order in which they run) if you have four or more CPU cores. I like to set the “renice” value at “10” - this will increase the priority of your game’s process, telling Linux to prioritize the game’s CPU time. You can also adjust things like GPU overclocking, but be careful! Setting incorrect values here can seriously damage your system.

How To Use

You can run GameMode as you launch each game in the terminal. Just open up your favorite terminal emulator, navigate to the game’s folder, and type the following:

gamemoderun ./game

Replace “game” with the name of the game’s executable file. If your game is run through Steam, you can edit Steam’s launch options so GameMode runs automatically. Just right click on the game you want to play and click “Properties.” This menu will come up:

Steam’s launch options

Click “Set Launch Options.” Then, in the box, paste the following:

gamemoderun %command%

GameMode will automatically start whenever you launch the game. Much better than enabling it by hand every single time! But wouldn’t it be great to not have to go through every single game in your library enabling GameMode support? Wouldn’t it be great to just have GameMode enabled every time you ran a game? That’s where Lutris comes in!

Lutris, your one-stop gaming launcher

Lutris is a library manager and game launcher for Linux. It complies all your installed games across all storefronts and platforms into one, easy to use location. It’s fully integrated with GameMode, allowing you to enable GameMode globally, for all your games, with a single toggle. Click the little Lutris icon in the upper-left corner of the window (the one that’s near the person icon and the plus sign icon).

Lutris’ system preferences menu

On the dropdown menu, select “Preferences,” then click the “System Options” tab. Click the “Enable Feral GameMode” button, and you’re good to go. GameMode will automatically be enabled whenever you play a game, and disabled whenever you’re done.

I’ve sung Lutris’ praises before, so check out that article if you want to get more in-depth with it. Have you found GameMode has helped your Linux games run smoother and better? Let us know, and keep an eye out for more Linux gaming content!