Como algunos de vosotros habéis podido leer en el foro, me habÃa propuesto instalar mis gráficos hÃbridos (ATI/Intel) en alguna de las muchas distribuciones que existen, ya que los que conozcáis este mal, sabréis que el sistema deja encendidas ambas gráficas aunque sólo use una de las dos, reduciendo asà la duración de la baterÃa de forma notable, y dotando a tu PC de un nuevo super poder, el de freÃr huevos encima de él.
Muy a mi pesar, tuve que renunciar a ese fin, ya que, en ninguna de las distribuciones que probé (Debian, OpenSuse, Xubuntu y Linux Mint) obtuve unos buenos resultados. Esto llevo a otro planteamiento del problema:
¿Cómo conseguir que una de las dos gráficas, en mi caso la ATI, permanezca apagada?
La solución, como a continuación veréis, viene implementada en el propio núcleo de nuestra distribución favorita y se llama vgaswitcheroo. Y a continuación tenéis el proceso, en el que asumimos que el paquete firmware-linux-nonfree está instalado, para uso y disfrute:
En primer lugar debemos averiguar si nuestro núcleo dispone de la opción de usar vgaswitcheroo:
$ grep -i switcheroo /boot/config-*
Lo que nos devolverá una lÃnea en nuestra terminal como esta:
CONFIG_VGA_SWITCHEROO=y
Si la salida es diferente, hay que recompilar el núcleo para añadir la opción de vgaswitcheroo. En segundo lugar, vemos si el archivo «/sys/kernel/debug/vgaswitcheroo/switch» existe. En este punto hay que hacer una distinción:
Para tener siempre accesible la carpeta y poder acceder al archivo switch, debemos montar la carpeta debug como sigue (siempre desde superusuario):
-
# mountpoint -q /sys/kernel/debug
-
# mount -t debugfs none /sys/kernel/debug
-
# echo "none /sys/kernel/debug debugfs defaults 0 0" >> /etc/fstab
El paso 3 podemos hacerlo manualmente. Se trata de añadir la linea none /sys/kernel/debug debugfs defaults 0 0 al archivo /etc/fstab para que la carpeta de vgaswitcheroo esté siempre accesible incluso después de un reinicio.
Una vez hecho esto podemos comprobar nuestro fichero switch dentro de la carpeta de vgaswitcheroo, mediante:
# cat /sys/kernel/debug/vgaswitcheroo/switch
y ello nos devuelve una salida como la de la imagen:
Vuestra salida puede ser diferente (que todas estén en modo Pwr, por ejemplo). En este archivo tenemos varias cosas a comentar. El término DIS corresponde a la gráfica dedicada (en mi caso, la ATI). El término IGD corresponde a la gráfica integrada en la CPU (la Intel). La cruz, +, marca la gráfica que se esta usando en el momento. Y por último, el termino Pwr o Off, hacen referencia al estado de las gráficas.
Con esto ya podemos desactivar o activar la gráfica que queramos mediante algunos comandos :
- Apagar la gráfica dedicada:
# echo OFF > /sys/kernel/debug/vgaswitcheroo/switch
- Encender la gráfica dedicada:
# echo ON > /sys/kernel/debug/vgaswitcheroo/switch
- Cambiar entre la integrada y la dedicada:
# echo DIGD > /sys/kernel/debug/vgaswitcheroo/switch # echo DDIS > /sys/kernel/debug/vgaswitcheroo/switch
Por último, para otorgar permisos a nuestra usuario habitual y asà poder ejecutar scripts al inicio, por ejemplo, habrá que ejecutar:
# chmod -R 705 /sys/kernel/debug # chown -R usuario:usuario /sys/kernel/debug/vgaswitcheroo
Espero que os sirva para exprimir un poco mejor el rendimiento de vuestros portátiles o como mÃnimo reducir el calor que desprenden.
Un saludo!
Fuentes: Lista de Correo de Debian | LinuxQuestion