Intro
GameMode is a system-wide performance optimizer developed by Feral Interactive. It automatically boosts CPU performance, disables power-saving features, and tweaks the system during gameplay. This guide explains how to install, enable, configure, and verify GameMode on Ubuntu for Steam, Lutris, and native games.
1. What Is GameMode and Why You Want It
If you play games on Linux, you already know the experience is incredible—but sometimes, performance isn’t consistent. One game runs perfectly smooth, while another suffers from small stutters, input latency, or frame dips at the worst possible moment.
Enter GameMode.
GameMode is a project developed by Feral Interactive (the studio behind many Linux ports like Tomb Raider and Dirt). It's designed to temporarily optimize your system only while you are gaming. When the game exits, GameMode cleanly restores everything back to normal.
What GameMode can do:
✔ Boost CPU frequency governor to performance
✔ Raise GPU performance levels (depending on the driver)
✔ Adjust I/O priority
✔ Disable system power-saving features
✔ Improve scheduling priority
✔ Automatically trigger scripts when a game launches or exits
✔ Provide Steam and Lutris integration
In short: It squeezes extra performance from your system without permanent tweaks.
More on Projects GitHub page here.
2. Installing GameMode on Ubuntu 24.04
Ubuntu makes GameMode installation easy—it's already included in the official repositories.
Step 1 — Open Terminal
Ctrl + Alt + T
Step 2 — Install GameMode and optional libraries
sudo apt update
sudo apt install gamemode libgamemode0 libgamemodeauto0
Here’s what each package does:
- gamemode – the actual daemon (
gamemoded) - libgamemode0 – allows applications to request GameMode via API
- libgamemodeauto0 – automatically enables GameMode for compatible games
Step 3 — Check if GameMode is working
Run:
gamemoded --version
You should see something like:
gamemoded version 1.8.1
If you do, you're ready to start using GameMode.
3. How GameMode Works (Explained Simply)
GameMode runs a service called gamemoded in the background.
When a game (or any program) requests GameMode, the service:
- Switches CPU governor → performance
- Prevents the CPU from entering deep sleep states
- Applies extra tuning rules
- Optional: runs custom scripts (overclock GPU, disable services, etc.)
When you quit the game, GameMode restores everything to your previous values.
Nothing permanent. No risks.
Just automatic optimization when you need it.
4. Enabling GameMode in Steam
Steam integration is extremely simple.
Step 1 — Open Steam
Right-click the game you want to optimize:
Library → Right-click → Properties
(Insert screenshot of Steam Properties window)
Step 2 — Add GameMode to Launch Options
Under Launch Options, add:
gamemoderun %command%
That’s it.
What this does
Steam will launch the game through:
gamemoderun
Which sends a request to the GameMode daemon.
Recommended Additional Flags
You can also combine it with other tools:
✔ MangoHud
✔ vkBasalt
✔ ProtonGE
✔ Gamescope
For example:
gamemoderun %command%
Or:
ENABLE_VKBASALT=1 MANGOHUD=1 gamemoderun %command%
(Insert screenshot of Launch Options)
5. Enabling GameMode in Lutris
If you use Lutris, enabling GameMode is also done through the GUI.
Step 1 — Open Lutris
Step 2 — Right-click your game → Configure
Step 3 — Go to the System Options tab
Scroll until you find:
- Enable Feral GameMode
(Insert screenshot of Lutris System Options)
Toggle it on.
Click Save.
Done.
6. Enabling GameMode for Native Linux Games (CLI Launch)
If you're launching games manually from terminal, just prefix your command:
gamemoderun ./MyGame
Or if the game is global in PATH:
gamemoderun gamebinary
This is also useful for emulators like Dolphin, Yuzu, or RetroArch.
7. Verifying That GameMode Is Working
To check GameMode during gameplay:
Method 1: Using MangoHud
Add to Steam Launch Options:
MANGOHUD=1 gamemoderun %command%
During gameplay MangoHud will show:
GameMode: ON
(Insert screenshot of MangoHud showing GameMode ON)
Method 2: Terminal Check
Open a second terminal and run:
gamemode-simulate-game
Or:
gamemoded -s
You should see a status like:
GameMode: active
Clients: 1
8. Optional: Customizing GameMode
GameMode uses a configuration file:
/etc/gamemode.ini
If it doesn't exist, copy the template:
sudo cp /usr/share/gamemode/gamemode.ini /etc/gamemode.ini
(Insert screenshot of gamemode.ini)
Open it:
sudo nano /etc/gamemode.ini
Useful configuration options:
8.1. Changing the CPU governor
Default:
[general]
desiredgov=performance
Restore governor after exit:
restoregov=1
8.2. I/O priority
ioprio=high
ioprio_class=2
8.3. Running scripts before/after gaming
Great for:
- Disabling heavy services
- Stopping backups
- Adjusting fan curves
- Overclocking
Example:
[custom]
start_script=/usr/local/bin/game-start.sh
end_script=/usr/local/bin/game-end.sh
(Insert placeholder for shell script)
8.4. GPU optimizations (experimental)
For NVIDIA:
[gpu]
nv_powermizer_mode=1
For AMD:
[gpu]
amd_performance_level=high
9. Troubleshooting GameMode
GameMode is not activating
Run:
systemctl --user status gamemoded
If it’s not running:
systemctl --user start gamemoded
Steam Game isn’t using GameMode
Make sure your launch options include:
gamemoderun %command%
Lutris ignores GameMode
Check if the runner is configured:
- Custom Wine builds sometimes lack libgamemodeauto
- Try enabling system-installed libraries
Game stutters more than before
Try lowering CPU governor aggressiveness in gamemode.ini.
10. Should You Always Use GameMode?
Short answer: Yes, almost always.
GameMode is lightweight and only activates when a game requests it. It doesn't harm your hardware, doesn't stress your system unnecessarily, and doesn’t change anything permanently.
It simply gives your Linux games a performance boost when needed.
11. Final Thoughts
GameMode is one of the essential tools for Linux gaming—right next to:
- ProtonGE
- vkBasalt
- MangoHud
- Gamescope
When combined, these tools can turn Ubuntu into a clean, stable, high-performance gaming machine.
GameMode is small, simple, elegant… and surprisingly powerful.