Skip to content

Latest commit

 

History

8 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 

Repository files navigation

🎮 GameMode

GameMode permite optimizar temporalmente el sistema cuando se ejecutan juegos, por ejemplo ajustando el governor de CPU.

📦 Install GameMode

Install the package:

sudo apt install -y gamemode

🔍 Check GameMode service GameMode runs as a user service, so use systemctl --user:

systemctl --user status gamemoded

output

○ gamemoded.service - gamemoded
     Loaded: loaded (/usr/lib/systemd/user/gamemoded.service; disabled; preset: enabled)
     Active: inactive (dead)

This is not necessarily an error.

gamemoded is normally started on demand when a client requests GameMode. It does not need to be permanently running. To start it manually for testing:

systemctl --user start gamemoded

Then verify:

systemctl --user status gamemoded

output expected:

● gamemoded.service - gamemoded
     Loaded: loaded (/usr/lib/systemd/user/gamemoded.service; disabled; preset: enabled)
     Active: active (running) since Sat 2026-08-29 16:57:53 CEST; 2s ago
 Invocation: 3cadad69d5724633b14e8dc393d43e0d
   Main PID: 14120 (gamemoded)
     Status: "GameMode is ready to be activated."
      Tasks: 2 (limit: 76860)
     Memory: 916K (peak: 2M)
        CPU: 6ms
     CGroup: /user.slice/user-1000.slice/user@1000.service/app.slice/gamemoded.service
             └─14120 /usr/bin/gamemoded

🧪 Run GameMode tests

Run:

gamemoded -t

output expected:

: Loading config
Loading config file [/usr/share/gamemode/gamemode.ini]
: Running tests

:: Basic client tests
:: Passed

:: Dual client tests
gamemode request succeeded and is active
Quitting by request...
:: Passed

:: Gamemoderun and reaper thread tests
...Waiting for child to quit...
...Waiting for reaper thread (reaper_frequency set to 5 seconds)...
:: Passed

:: Supervisor tests
:: Passed

:: Feature tests
::: Verifying CPU governor setting
::: Passed
::: Verifying Scripts
::: Passed (no scripts configured to run)
::: Verifying GPU Optimisations
::: Passed (gpu optimisations not configured to run)
::: Verifying renice
::: Passed (no renice configured)
::: Verifying ioprio
::: Passed
:: Passed

: All Tests Passed!

✅ GameMode is correctly installed and working.

⚠️ Troubleshooting: CPU governor test fails

On systems using modern AMD CPUs with amd-pstate-epp, GameMode may report:

::: Verifying CPU governor setting
ERROR: Governor was not set to performance (was actually powersave)!
::: Failed!

This does not necessarily mean that GameMode is broken.

First check which CPU frequency driver is being used:

cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_driver

For an AMD system using the modern P-State driver, the result should be similar to:

amd-pstate-epp

Check the available governors:

cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors

output expected:

performance powersave

🔋 Check power-profiles-daemon

Debian may have power-profiles-daemon enabled:

systemctl status power-profiles-daemon --no-pager

output expected:

$ systemctl status power-profiles-daemon --no-pager
● power-profiles-daemon.service - Power Profiles daemon
     Loaded: loaded (/usr/lib/systemd/system/power-profiles-daemon.service; enabled; preset: enabled)
     Active: active (running) since Sat 2026-08-29 16:37:41 CEST; 39min ago
 Invocation: 97f8018f198049109c31e307f1e06c18
   Main PID: 1515 (power-profiles-)
      Tasks: 4 (limit: 76860)
     Memory: 1.7M (peak: 2.6M)
        CPU: 135ms
     CGroup: /system.slice/power-profiles-daemon.service
             └─1515 /usr/libexec/power-profiles-daemon

Warning: some journal files were not opened due to insufficient permissions.

Check the current power profile:

powerprofilesctl get

output expected:

balanced

the CPU may be using:

scaling governor: powersave

❌ Output error Gamemode

: Loading config
Loading config file [/usr/share/gamemode/gamemode.ini]
: Running tests

:: Basic client tests
:: Passed

:: Dual client tests
gamemode request succeeded and is active
Quitting by request...
:: Passed

:: Gamemoderun and reaper thread tests
...Waiting for child to quit...
...Waiting for reaper thread (reaper_frequency set to 5 seconds)...
:: Passed

:: Supervisor tests
:: Passed

:: Feature tests
::: Verifying CPU governor setting
ERROR: Governor was not set to performance (was actually powersave)!
::: Failed!
::: Verifying Scripts
::: Passed (no scripts configured to run)
::: Verifying GPU Optimisations
::: Passed (gpu optimisations not configured to run)
::: Verifying renice
::: Passed (no renice configured)
::: Verifying ioprio
::: Passed
ERROR: :: Failed!
: Tests Failed!

⚠️ This can cause the GameMode CPU governor test to fail.

🚀 Test with the performance profile

Temporarily switch to the performance profile:

powerprofilesctl set performance

Verify:

powerprofilesctl get

Expected:

performance

Then check the CPU governor:

cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor

Expected:

performance

Run the GameMode test again: If the test now ends with:

: All Tests Passed!

✅ GameMode is correctly installed and working.

🔄 Restore the normal profile

After testing, return to the normal balanced profile:

powerprofilesctl set balanced

Verify:

powerprofilesctl get

Expected:

balanced

The CPU governor will normally return to:

powersave

This is expected.

🕹️ Test in game

🎮 Using GameMode with games For Steam games, add this to the game's Launch Options:

gamemoderun %command%
test

🚀 Install GE-Proton

⬇️ Download latest version

🔗 https://github.com/GloriousEggroll/proton-ge-custom/releases

  • Uncompress file GE-ProtonXX-XX.tar.gz
  • Copy extracted folder to:
    ~/.local/share/Steam/compatibilitytools.d/

⚙️ Activate GE-Proton on Steam

image

Metal Gear Solid V

image

Metal Gear Solid 3

image

Mortal Kombat 11 Ultimate

image

Resident Evil 2

image

Resident Evil 3

image

Resident Evil 4

image

About

No description or website provided.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors