GameMode, una excelente aplicación para mejorar el rendimiento de juegos en Linux

febrero 29, 2020 , 0 Comments

Feral Interactive es una compañía y distribuidora de juegos para diferentes plataformas (macOS, Linux, dispositivos iOS, dispositivos Android y Nintendo Switch) a la cual le podemos atribuir varios títulos bastante buenos de los cuales ya en un artículo nuestro compañero Diego habla de algunos de ellos.

Y es que, haciendo mención de la compañía, no solo podemos agradecer de su gran esfuerzo de trabajar para ofrecer sus títulos para Linux, sino que también le agradecemos por su gran esfuerzo por tratar de mejorar el mundo gaming en Linux.

Pues ya desde hace vario tiempo la compañía ha estado trabajando y mejorando su herramienta llamada “GameMode” la cual es una herramienta impresionante que puede mejorar el rendimiento mientras se juegan en Linux.

GameMode mejora significativamente el rendimiento de los juegos aplicar “temporalmente” un conjunto de optimizaciones al sistema operativo, estas optimizaciones son las siguientes:

  • Cambiar el gobernador de la CPU.
  • Prioridad de O/I.
  • Programador de kernel (SCHED_ISO).
  • Protector de pantalla inhibido
  • Modo de rendimiento de GPU (NVIDIA y AMD), overclocking de GPU (NVIDIA),
  • Scripts personalizados.

Como tal GameMode cuenta con soporte para diferentes distribuciones de Linux, de las cuales podemos mencionar algunas de las principales que son Ubuntu, Debian, Solus, Arch Linux, Gentoo, Fedora, OpenSUSE, Mageia y a estas añadiendo sus derivadas, con lo cual la lista aumenta.

¿Cómo instalar GameMode?

GameMode básicamente es un servicio (daemon) y una librería con lo cual, este combo se encarga de realizar los cambios pertinentes en el sistema.

Para poder instalar GameMode en Linux, primero debemos de instalar algunas dependencias necesarias para su funcionamiento y así evitar tener problemas con el script de instalación de la herramienta y estar liados en solucionarlos.

En el caso de los que son usuarios de Debian, Ubuntu, Linux Mint así como alguna otra distribución derivada de estas. Vamos a instalar las dependencias necesarias desde una terminal, en la cual vamos a ejecutar el siguiente comando:

sudo apt install meson libsystemd-dev pkg-config ninja-build git libdbus-1-dev dbus-user-session

Ahora en el caso de los que son usuarios de Arch Linux, Manjaro, Arco o cualquier otro derivado de la distribución. En una terminal vamos a teclear lo siguiente:

sudo pacman -S meson systemd git dbus

Mientras que para quienes utilizan Fedora, CentOS, openSUSE o cualquier otra distribución derivada de estas:

sudo dnf install meson systemd-devel pkg-config git dbus-devel

Para el caso de Gentoo podremos instalar las dependencias necesarias con:

emerge --ask games-util/gamemode

En el caso de Solus, pueden instalar el paquete y todo lo necesario desde el centro de software. 

Ya con las dependencias instaladas, ahora vamos a proceder a obtener el script de instalación de GameMode para poder ejecutarlo y se instale en nuestro sistema.

Para esto, solo debemos abrir una terminal y en ella tecleamos los siguientes comandos:

git clone https://github.com/FeralInteractive/gamemode.git

cd gamemode

git checkout 1.5

./bootstrap.sh

Y listo con ello ya tenemos instalado el servicio. Pero ahora toca saber como llamar a ese servicio para que ejecute cuando vamos a correr algun juego en nuestro sistema.

Modo de uso

Como tal, el servicio de GameMode no está en ejecución todo el tiempo sobre el sistema, aun que si se encuentra ya activo para poder trabajar cuando se requiera. Nosotros debemos de llamar al servicio para que se ejecute a la par con otro servicio (que en este caso serán los juegos).

Para poder hacer esto tenemos dos opciones.

1.- Ejecutar GameMode en juegos nativos de Linux con lanzadores independientes

2.- Ejecutar GameMode en juegos de Steam

En el primer caso al mencionar lanzadores independientes me refiero a juegos que podremos instalar desde nuestro centro de software o paquetes independientes que no requieren de una aplicación intermedia, como es el caso en Steam donde prácticamente solo damos clic en instalar y el cliente de Steam se encarga de todo, desde la instalación, lanzar el juego, brindarte estadísticas, etc.

En un ejemplo común para el primer caso, vamos a tomar a Supertuxkart, el cual podemos ejecutar desde la terminal o su lanzador en nuestro menú de aplicaciones.

En este caso, vamos a utilizar la terminal para llamar al servicio de GameMode y se ejecute junto con Supertuxkart para realizar los cambios pertinentes para mejorar el rendimiento del juego.

Para ello vamos a utilizar el comando “gamemoderun” y en adición el lanzador del juego:

gamemoderun supertuxkart

Finalmente para el segundo caso. Para juegos que se ejecutan desde Steam.

Dentro de “Opciones de lanzamiento” para su juego en Steam, vamos a añadir un valor en la opción de “opciones de lanzamiento” que encontramos dando clic secundario sobre el juego, en propiedades.

Ahí vamos a añadir lo siguiente:

gamemoderun %command%

Damos clic en ok y podremos ejecutar nuestros juegos y GameMode para que se encargue del resto.

Más información. En este enlace.


Some say he’s half man half fish, others say he’s more of a seventy/thirty split. Either way he’s a fishy bastard.