Commit Graph

66 Commits

Author SHA1 Message Date
ffea085396 Follow up improvements to documentation for GAMEMODERUNEXEC 2019-07-16 08:17:35 +01:00
47db83e509 Add hybrid GPU support
Signed-off-by: Stephan Lachnit <stephanlachnit@protonmail.com>
2019-07-14 16:45:33 +02:00
ebbb9a3511 Fix libdbus-1-dev package name typo 2019-06-03 08:10:30 +01:00
e5286e1495 Add Three Kingdoms to list of games with integration 2019-06-01 13:50:24 +01:00
28243afde9 Clean up the main readme file and split some parts out
This groups development, daemon and lib parts together much better
2019-06-01 10:56:27 +01:00
a837b8630c We depend on DBus development packages now 2019-05-29 16:02:49 +01:00
99c7d04e69 Add a link to the GNOME Shell extension 2019-05-07 09:30:33 +01:00
4a49a1c2a5 Add a list of games which integrate GameMode support (#135) 2019-05-07 09:25:33 +01:00
0aced6f14e Add reference to openSUSE packages
OpenSUSE packages are available at https://software.opensuse.org/package/gamemode, so let's reflect this in the README.
2019-04-11 01:08:46 +02:00
e86580c18c Update instructions to use 1.3.1 as the current stable release 2019-04-09 08:34:44 +01:00
db4dd87e22 Add Debian to the list of distros which have packages available 2019-03-25 16:49:25 +00:00
ea7d1c13a3 Update to version 1.3 2019-03-15 13:39:00 +00:00
10a31f8dec Update copyright years to 2019 2019-03-14 16:59:30 +00:00
6b7f6c12c2 Various README fixes/adjustments 2019-03-14 16:51:29 +00:00
2ab46df4c3 Disable softrealtime (SCHED_ISO) and renice by default
SCHED_ISO is not supported by upstream kernels, so don't try to use this by
default since for most users it will result in an error log that trying to
set the scheduling policy fails.

Without extra system configuration, we will also not have permission to renice
processes by default, so out of the box doing this will fail as well.

Users that wish to use these features can enable them from the config once
they have configured their system appropriately.
2019-03-14 15:00:49 +00:00
433370e3fa Add details of Gentoo ebuild for stable release
As suggested in #110.
2019-03-10 10:10:00 +00:00
c7c1c5470f Minor fix for preload instructions 2019-02-27 09:38:09 +00:00
1b96111afc Add entry in README for supervisor support 2019-02-21 17:34:20 +00:00
10d1c12aab Correct capitalisation and ini file path in README 2019-02-13 17:25:24 +00:00
f86f57af0e Add a little more flavor text to remind users that both AMD and Nvidia do have automatic overclocks 2019-02-12 08:55:23 +00:00
4cee59cde3 Add a note about overclocking to the README 2019-02-12 08:55:23 +00:00
0d5fb9de20 Add note that there is an Ubuntu Cosmic package now available! 2019-02-06 16:35:37 +00:00
74e26d6f63 Add "gamemoderun", a wrapper bash script like "primusrun"
This should remove a point of failure currently where users fail to set LD_PRELOAD correctly, or the path is wrong somehow.

	FWIW: The old method still works, and I've noted that in the README.
2019-02-05 21:16:02 +00:00
0df479537e Update the explanation at the start 2019-01-31 19:40:08 +00:00
04a81105df Re-order the install dependencies title 2019-01-31 19:31:52 +00:00
9369388669 Make the package manager part clearer 2019-01-31 19:31:05 +00:00
b63b0d3393 More minor edits to README
* Add titles to features
	* Remove now defunct "Users" title
	* Add title to Integrations
	* Move up CPU overclocking warning into Features
2019-01-31 19:28:24 +00:00
65717599ec Add titles to building and installing 2019-01-31 19:23:03 +00:00
6c277af7a2 Add the travis status 2019-01-31 19:19:52 +00:00
8a472663bd A big README refactor
* Move the explanation of features down
	* Move the explanation of developer info down
	* Move configuration info up
	* Simplify build instructions
2019-01-31 19:16:19 +00:00
60c722d252 Merge pull request #85 from terencode/master
Add with-pam-group meson option
2018-12-10 09:53:29 +00:00
5f91922506 Add with-pam-group meson option
This adds 10-gamemode.conf as a limits.d configuration file and with-pam-group meson option to allow renicing as an unpriviledged user being part of the specified group.

Signed-off-by: Térence Clastres <t.clastres@gmail.com>
Signed-off-by: Kai Krakow <kai@kaishome.de>
2018-12-07 21:50:58 +01:00
62865b1e32 gamemode: Apply io priority to clients
This commit allows changing the io priority of the client to a value
specified in the configuration file. That can possibly reduce lags or
latency when a game has to load assets on demand and you have background
IO activity running (or other concurrent IO).

Signed-off-by: Kai Krakow <kai@kaishome.de>
2018-10-03 04:24:56 +02:00
7af744250e README: Mention Fedora packages
GameMode is now in the official Fedora repository.
2018-09-29 09:27:48 +01:00
af8c2a7c4a README: Mention Gentoo support
Gentoo has merged the gamemode ebuild into portage as of:
https://github.com/gentoo/gentoo/pull/9700#issuecomment-423886373

Signed-off-by: Kai Krakow <kai@kaishome.de>
2018-09-24 09:13:24 +02:00
c3938599a8 Update to version 1.2 2018-07-21 09:33:32 +01:00
f6786ed5d2 Further formatting fixes 2018-07-13 10:32:34 +01:00
3645b43416 Fix formatting 2018-07-13 10:31:57 +01:00
407a7b2d0a Document how to uninstall
Issue #59.
2018-07-13 10:30:55 +01:00
1369629972 README.md: use version library in examples
Now that versioned libraries are created, use that in the examples
provided.
2018-07-02 14:14:47 +02:00
e85dc3ecfb Added build notes for the git master
The build instructions here only cater for release 1.1.
This adds in build notes for the master branch.
2018-06-21 05:52:03 +03:00
ead417be36 docs: Add a warning about potential resource starvation
Warn the user about adjusting `SCHED_ISO` to too high CPU usage values
as it may render the OS unresponsive.

Signed-off-by: Kai Krakow <kai@kaishome.de>
2018-06-10 10:07:23 +02:00
048b7b1c17 docs: Document priority inversion caveats
Depending on the local system architecture and the game architecture,
changes to the scheduling may result in priority inversion which has
counter-intuitive effects on performance. Let's document these to give
the user a chance to detect and fix this problem.

Signed-off-by: Kai Krakow <kai@kaishome.de>
2018-06-10 09:38:57 +02:00
57c6bbb444 config: Allow renice configuration
This commit adds configuration support for the renice value and amends
documentation and examples. This commit by itself does nothing, the
following commit is needed to actually apply the new settings.

Signed-off-by: Kai Krakow <kai@kaishome.de>
2018-06-10 09:33:02 +02:00
76ece2fc26 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>
2018-05-23 22:23:42 +02:00
2c68ae67e6 added info about overclocking (#49)
* added info about overclocking
2018-05-11 15:12:25 +01:00
1dc641ca59 Add a note for dbus-user-session as seen in issues like #48 2018-05-11 08:59:51 +01:00
907a690e39 Merge branch 'master' into 1.1RC 2018-05-01 15:45:57 +01:00
808f5c9159 Provide a cascaded merge-overwrite config approach for #6
gamemoded will now load and merge settings from the following locations - arrays will merge and single settings will overwrite.

	1. /usr/share/gamemode/
	2. /etc/
	3. $XDG_CONFIG_HOME or $HOME/.config/
	4. $PWD
2018-05-01 15:42:54 +01:00
fb2f3c628a Update to 1.1 ready for release 2018-04-25 15:50:05 +01:00