Optimizando la batería en el kernel 2.6.38 forzando ASPM

Estoy usando el kernel 3.0.0-5-generic sobre un Ubuntu 11.10 alpha-2 y no note cambios cuando aplique pcie_aspm=force. Bueno, de repente se sintió muy caliente mi laptop, pero fuera de eso…

Si cuando se actualizo al kernel 2.6.38 la duración de la batería se redujo, en algunos casos puede solucionarse habilitando ASPM de forma forzada. En la documentación de Fedora advierten que hay que checar que todo el hardware PCIe que tenemos soporte ASPM (Administrador de energía de estado activo) antes de forzarla, porque puede hacer que el sistema deje de responder.

En el grub2 se puede establecer el comportamiento del kernel hacia el ASPM, utilizando: pcie_aspm=[off/force].

pcie_aspm=off   ==>   lo apaga

pcie_aspm=force   ==>   habilita el ASPM, incluso en dispositivos que no lo soportan.

En la documentación de Fedora advierten que habilitar ASPM en hardware que no lo soporte puede hacer que el sistema deje de responder. Qué antes de hacer el cambio hay que ver que todo el hardware PCIe que tenemos soporte ASPM.

Método 1

Forzar ASPM desde el arranque con el grub2.

Al agregar pcie_aspm=force en el grub2 hacemos que el kernel active ASPM, incluso en dispositivos que no lo soportan.

¿Ya comente que Fedora hace una advertencia para que comprobemos que el PCIe que tenemos soporte ASPM? Esto es importante, porque este cambio puede hacer que nuestro sistema deje de responder, cuando lo hacemos sobre un hardware que no lo soporta.

Paso 1.-

sudo nano /etc/default/grub

Paso 2.-

Comentamos la línea (se le pone # (signo de número) al inicio de la línea) para que no la tome en cuenta el kernel.

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"

Añadimos:

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash pcie_aspm=force"

Guardamos los cambios

Paso 3.- Actualizamos el grub2 para que los cambios se hagan efectivos

sudo update-grub

Paso 4.- Reiniciamos

sudo reboot

 

Método 2

En /sys/module/pcie_aspm/parameters/policy se establecen las políticas para ASPM

Tiene tres politicas:

default   ==>   Se comporta según lo especificado en el firmware en el sistema.

powersave   ==>   Ahorra energía cuando se puede, sin importar el costo del rendimiento.

performance   ==>   Hace que los enlaces PCLe trabajen con el máximo rendimiento, pero inhabilita el ASPM y consume más energía.

Cuando veo que tiene mi /sys/module/pcie_aspm/parameters/policy

cat /sys/module/pcie_aspm/parameters/policy

Me devuelve:

[default] performance powersave

Documentación sobre el tema casi no encontré. Lo poco que había decía esto:

sudo su

echo "powersave" > /sys/module/pcie_aspm/parameters/policy

exit

Notas.- powersave se sustituye por cualquiera de las otras opciones de política mencionadas arriba.

En bbs.archlinux.org dicen que a partir del kernel 2.6.39.1 no se puede cambiar la política de ASPM por este medio. fphillips ahora solo se puede hacer forzando la política con pcie_aspm=force (primer método)

 

 

 

http://www.phoronix.com/scan.php?page=article &item=linux_2638_aspm &num=1
http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=2f671e2dbff6eb5ef4e2600adbec550c13b8fe72
http://doc.fedoraproject.org/es-ES/Fedora/14/html-single/Power_Management_Guide/index.html
http://www.muylinux.com/2011/04/25/linux-2-6-38-%C2%BFproblemas-con-la-gestion-de-energia/
http://www.mythtv.org/wiki/Power_saving
https://bbs.archlinux.org/viewtopic.php?pid=946633#p946633

 

 

 

Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s