mirror of
https://github.com/FeralInteractive/gamemode.git
synced 2025-07-31 18:36:53 +02:00
Leverage soft real time capabilities
Kernels that support SCHED_ISO scheduling policy can give processes soft real time support. This improves latency without compromising system stability. See https://lwn.net/Articles/720227/. This commit adds support for setting this policy with a safe fall back if kernel support is lacking by just ignoring the error condition. Additionally, it also tries to raise the nice priority of the game to -4 to give it a slight IO and CPU priority over other background processes. This needs PAM adjustments to allow users raising priority to certain levels. If it doesn't work, the fall back strategy is also ignoring the error condition. See /etc/security/limits.conf. Kernels that currently support SCHED_ISO include kernels with Con Kolivas MuQSS patchset (likely the CK patchset). This patchset is generally recommended for desktop machines but usually not found in standard distribution kernels due to lack of widespread stability tests. Signed-off-by: Kai Krakow <kai@kaishome.de>
This commit is contained in:
@@ -5,6 +5,10 @@ The design has a clear-cut abstraction between the host daemon and library (`gam
|
||||
|
||||
GameMode was designed primarily as a stop-gap solution to problems with the Intel and AMD CPU powersave or ondemand governors, but is now able to launch custom user defined plugins, and is intended to be expanded further, as there are a wealth of automation tasks one might want to apply.
|
||||
|
||||
GameMode can leverage support for soft real time mode if the running kernel supports `SCHED_ISO`. This adjusts the scheduling of the game to real time without sacrificing system stability by starving other processes.
|
||||
|
||||
GameMode adjusts the nice priority of games to -4 to give it a slight IO and CPU priority over other background processes. This only works if your user is permitted to adjust priorities within the limits configured by PAM.
|
||||
|
||||
Issues with GameMode should be reported here in the issues section, and not reported to Feral directly.
|
||||
|
||||
---
|
||||
|
Reference in New Issue
Block a user