How To: deshabilitar NVidia Optimus Ubuntu 11.04
- agosto 22nd, 2011
- Publicado en Linux . Software Libre . Ubuntu
- Por pagondel
- Publicar un comentario
NVidia Optimus es la ultima tecnología de nvidia para computadores portátiles, la que por medio de dos tarjetas gráficas (una integrada y una adicional) permite un mejor rendimiento de los recursos del computador por medio del encendido y apagado de la tarjeta adicional de acuerdo a la necesidad de procesamiento gráfico. Hasta ahí, todo suena bonito, el problema es que NVidia Optimus no tiene soporte para Linux, y no está dentro de los planes de la compañía soportarlo dentro del corto plazo, por lo que han aparecido un par de proyectos libres que permiten implementarlo( Bumblebee, Ironhide y se esta pensando en una implementación del driver libre nouveau). En mi caso (un Dell l502x), no tuve mucho éxito con estos proyectos, por lo que he decidido deshabilitar por completo la tarjeta adicional, esto me ha traído algunos problemas al ver vídeos en alta definición o al correr algunos juegos, pero la disminución en la temperatura y la aumentada vida de la batería lo comienzan. Sin más vamos a poner manos a la obra.
Primero que nada actualizamos los drivers de vídeo, esto es debido a que con los drivers proveídos por el sistema experimentaba constantes congelamientos de la imagen:
sudo add-apt-repository ppa:xorg-edgers/ppa
sudo aptitude update
sudo aptitude safe-upgrade
una vez se hayan instalado la ultima versión de los controladores de vídeo, descargamos git:
sudo aptitude install git
por medio de git descargaremos acpi-call y compilamos, la herramienta que nos permite apagar nuestra tarjeta nvidia:
git clone http://github.com/mkottman/acpi_call.git
cd acpi_call
make
Ahora probamos si nuestra tarjeta puede ser apagada, para eso cargamos el modulo que acabamos de compilar y corremos el script de prueba:
sudo insmod acpi_call.ko
sh test_off.sh
Si después de correr este ultimo comando aparece una linea que diga “It Works”, entonces nuestra tarjeta de vídeo puede ser desactivada usando este método, por lo que pasaremos a hacerlo permanente.
En mi caso el método que que funciono fue el:
\_SB.PCI0.PEG0.PEGP._OFF
Por lo que continuare utilizando este método como ejemplo de aquí en adelante.
Primero copiamos el modulo recientemente compilado al directorio de módulos de nuestra versión del kernel (esto debe hacerse cada vez que se actualice el kernel)
sudo cp acpi_call.ko /lib/modules/`uname -r`/kernel/drivers/acpi
sudo depmod
y lo agregamos al listado de módulos que se cargan al inicio de nuestro sistema
sudo nano /etc/modules
y escribimos “acpi_call” (sin las comillas) al final del archivo.
Ahora agregaremos nuestro comando de apagado al archivo rc.local, para que de esta forma se inicie automáticamente cuando iniciemos nuestro pc:
sudo nano /etc/rc.local
y escribimos lo siguiente (recuerda reemplazar por tu método correspondiente):
echo ‘\_SB.PCI0.PEG0.PEGP._OFF’ > /proc/acpi/call
y fijandonos que la ultima linea del archivo diga “exit 0″ guardamos y salimos del archivo.
Ahora enlistaremos los drivers de nvidia para que no se carguen junto al sistema, para esto;
sudo nano /etc/modprobe.d/blacklist-nvidia.conf
y escribimos lo siguiente:
blacklist nouveau
blacklist nvidia
guardamos y salimos
Finalmente, con la tarjeta gráfica adicional apagada era imposible reiniciar el equipo, por lo que generaremos un script que la encienda antes de que el reinicio se realize, para esto:
sudo nano /etc/init.d/acpi-call
donde escribimos:
#!/bin/sh
echo ‘\_SB.PCI0.PEG0.PEGP._ON’ > /proc/acpi/call
exit 0
Y finalmente le damos permisos de ejecución y generamos un link simbólico a /etc/rc6.d, para esto:
sudo chmod +x /etc/init.d/acpi-call
sudo ln -s /etc/init.d/acpi-call /etc/rc6.d/K10acpi-call
Y listo, para información extra pueden visitar:
https://wiki.ubuntu.com/X/Troubleshooting/Freeze

Buenas.
Buscando información sobre como deshablitar el Nvidia Optimus he ido a parar a tu web. En mi caso tengo Debian pero el portatil es el mismo, Dell LX502.
Entonces si no he entendido mal, lo que haces es deshabilitar la nvidia para usar la intel. Correcto???
En este caso, que xorg.conf se tendria que usar???
Gracias si puedes echarme un cable
Hola Victor!
Asi es, lo que hago es desactivar por completo la tarjeta NVidia ;)
En cuanto a que xorg.conf deberias usar, bueno, si no mal tengo entendido, ahora eso lo hace udev automagicamente, por lo que no deberias tener que preocuparte por eso.
Lo que si te recomiendo es que intetes actualizar el paquete con los drivers para intel (xserver-xorg-video-intel), en debian sid mantienen un paquete bastante actualizado ;)
Saludos!
Buenas Pagondel tiempo si nhablar.
una consulta. Esta conffiguracion se peude llevar a cabo aun cuando no inicen las x del sistema?, es decir, sin grafica?
Gracias.
Hola Christopher!
Si, ha pasado harto tiempo…
podrías intentarlo, si, aunque desconozco los resultados, tampoco sabría decirte porque no tienes interfaz gráfica, nunca tuve ese problema =/
tengo un xp2 15 con nvidia optimus es la nvidia gt540 instala ubuntu y al reiniciar pa! sin grafica xD si logro cualquier cosa lo posteo por si a otra persona le pasa lo mismo
saludos!
Hola amigo como estas, te felicito por el tutorial esta muy bueno, bueno solo te queria hacer una colsulta, en mi caso yo tenho una tarjeta de video ati, lo que queria saber es el nombre de mis drivers par ponerlos en el blacklist, de antemano gracias.
Gracias por tu comentario Kevin, si no me equivoco el modulo de ati es “radeon”, pero para estar mas seguros, puedes ver los modulos que estan corriendo en tu sistema ejecutando el comando “lsmod”, bajo el modulo “video”.
Saludos!
Yo tengo una duda. ¿Y si lo que quiero es desactivar la Intel y dejar solo la Nvidia? ¿Cómo habría que hacerlo? Es un portátil MSI CX623.
Gracias.
Saludos!
Hola Sergio!
La verdad yo no recomendaria hacerlo, ya que el equipo se sobrecalienta y la duracion de la bateria disminuye significativamente =/
La verdad que la batería no la uso mucho, y utilizo mucho el portatil con Photoshop y eso. Pienso que sería mejor tener la Nvidia y no la Intel, no? ¿Qué me recomiendas? :S
Hola Sergio!
Ummm, la verdad es q Photoshop o GIMP, no hacen mucho consumo de la tarjeta de video, el mayor consumo de tarjeta de video lo ocuparian los juegos o si haces render 3d, por lo que yo te recomendaria que intentaras utilizar ironhide o bumblebee y si con esas herramientas no tienes exito desactivaras la tarjeta nvidia, y si en cualquier minuto necesitas ocupar la tarjeta nvidia puedes encenderla escribiendo: sudo service acpi-call
buenas, precisamente tengo el mismo portátil, instalé ubuntu 11.10, no me gusta nada unity y me parece una chapuza gnome así que volví al 10.04.3 pero no funcionaba la gráfica y quería tener los efectos visuales y tal, has logrado activar la nvidia en ubuntu 11.10? si ya has actualizado?
probé bublebeen y también instalando los driver de la gráfica de la página de nvidia pero nada, gracias
Hola Jesus!
Con 10.04 no he probado, pero con 11.10 funcionan sin problemas los pasos que indico aqui, con compiz funcionando. En cuanto a activar la nvidia, pues la verdad no lo he intentado, ya que el equipo se sobre calienta mucho y la vida de la bateria disminuye considerablemente ;)
Saludos!
Hola.
Ahora tengo un pc con nVidia Optimus y me dispongo a instalar linux (otra distro eso sí).
Pero tengo una duda…dado que las dos tarjetas están prendidas en linux…antes de desactivar la nvidia como tu tutorial, ¿qué driver hay que instalar, el de la intel?
Que aunque estén ambas tarjetas prendidas, ¿linux usa solamente una de las dos cierto?
Gracias!
hola Felipe!
-Si, el driver que hay q instalar es el de intel
-si, aunq no sabria decirte si ocupa la nvidia cuando utilizas en casos de que el hdmi o alguna otra salida de video este ligada a esta tarjeta.
Saludos!
hola amigo tengo una pregunta, las computadoras laptops con video de nvidia optimus, de una giga ddr3 recalienta esta misma, pues la verdad hago un esfuerzo enorme para comprarmela ya que soy de escaso recurso, pero quiero una buena bonita y barata, con mucho esfuerzo…pence en una lenovo…dime me ayudas , esta tarjeta de una giga ddr3 nvidia optimus recalienta la maquina…gracias x tu ayuda.
Si se calienta, pero solo cuando la ocupas… normalmente no deberia causar problemas =)