viernes, 20 de julio de 2018

Optimizar un miniPC con TLP


Seguro que sabéis que en este blog he dedicado unas cuantas entradas para intentar optimizar el funcionamiento del miniPC con el que trabajo.  Una entrada creada cuando trabajaba con Ubuntu 14.04, titulada: "Alivio térmico para mi Ivy Bridge (i7) en modo powersave", y otra, con Debian Stretch, titulada "Menos ruido, temperatura y consumo, en el i7 Ivy Bridge nanoPC".  Con la última actualización de Debian Stretch, que ahora ya es la versión 9.5, dejó de funcionar como estaba establecido anteriormente porque actualizó el núcleo o Kernel a la versión 4.9.0-7-amd64.


A veces, al darle demasiadas vueltas a estas cosas, uno acaba incurriendo en la torpeza de no abordarlo de una forma mucho más sencilla y eficaz, y aquí me despistó el no haberme percatado de que un miniPC no es, ni más ni menos, que un portátil sin batería. Linux dispone de un administrador avanzado de energía llamado TLP (Linux Advanced Power Management) que nos va a facilitar enormemente la optimización de cualquier miniPC .
Esencialmente, el objetivo de esta entrada es establecer el funcionamiento del microprocesador del miniPC a 1,6 GHz, y anular la función "Turbo boost" que facilitaría que ascendiera su velocidad a 3,1GHz. El objetivo de limitar las prestaciones del miniPC es buscar una buena relación entre velocidad, ruido y disipación de potencia, evitando que el microprocesador y el disco duro puedan llegar a una temperatura de ambiente alrededor de 25°C, en el peor de los casos, a los 90 y 60°C , respectivamente. Cuando alguien juega con Minecraft o con KoGaMa, o usa un simulador de vuelo en un miniPC potente solo tiene dos opciones: soportar estoicamente el ruido de su ventilador interno, o buscar una buena relación entre sus prestaciones y el ruido de funcionamiento. Esto último es lo que planteo aquí.

Los paquetes TLP (Linux Advanced Power Management) están disponibles en Debian Stretch, y los instalaremos a través de Synaptic.


 TLP nos brinda los beneficios de una administración avanzada de energía para Linux sin tener que entrar en profundidad sobre las cuestiones técnicas que toca, ya que TLP viene configurado por defecto para optimizar el uso del PC con batería o con corriente alterna de red. Sin embargo, TLP es altamente personalizable para poder cumplir con cualquier criterio específico, por ello lo traigo a colación en esta entrada sobre un miniPC, y no sobre un portátil, que es para lo que habitualmente está recomendado.
Antes de modificar el archivo de configuración de TLP, ya que no tiene una herramienta gráfica para poder configurarlo directamente, yo les recomiendo deshabilitar Intel Pstate, ya que pude percatarme usando cpufreq-info que determinados parámetros se señalaban como desconocidos cuando Intel Pstate estaba activado. Esta opción no siempre es necesario realizarla, ya que depende de la máquina que se use, aunque no creo que pase nada si se deshabilita como lo hago yo en este caso.
Para deshabilitarlo editamos el archivo GRUB con Mousepad desde el Terminal como root:

su root 
mousepad /etc/default/grub

 y modificamos la siguiente línea dejándola así:


GRUB_CMDLINE_LINUX_DEFAULT="intel_pstate=disable quiet splash"

Guardamos el archivo, y aplicamos los cambios usando desde el terminal el siguiente comando:

update-grub

Reiniciamos.

 Ahora ya podemos hurgar en el archivo de configuración de TLP que está almacenado en /etc/default/tlp, y yo lo hago de forma gráfica usando Thunar con permisos administrativos. Para ello, desde el terminal, tecleamos:


su root
thunar


 Luego editamos el archivo con Mousepad, y modificamos las líneas marcadas en la siguiente imagen:


 Después de reiniciar podemos comprobar con el comando siguiente en el Terminal de root como queda el tema, ya que muestra datos del funcionamiento del procesador:
 tlp-stat -p


Ahora tenemos un microprocesador de cuatro núcleos lógicos (subprocesos) que trabajan a 160.000 KHz (1,6 GHz), en el modo "performance" de entre los dos (performance, powersave) que podemos elegir en un i7 3537U (Ivy Bridge). Turbo boost está deshabilitado. En el modo performance tiene prioridad el rendimiento, dentro de los parámetros establecidos, al ahorro de energía, y es el modo por defecto cuando está alimentado por la red eléctrica. Si usamos el modo powersave se va siempre a la velocidad más baja según la demanda de trabajo, y merma bastante su rendimiento, más en este caso que está limitado en la práctica a la mitad.
 Hoy hace una temperatura en casa de 26°C, y el microprocesador no pasa de 60°C a pesar de que el ruido del ventilador es prácticamente imperceptible. Podemos verlo con el comando tlp-stat -t


El comando tlp-stat -d nos muestra  la temperatura en el disco duro, entre otros parámetros.

   
En la estupenda distribución que he diseñado con Debian Stretch, dispongo de una monitorización permanente del rendimiento de los subprocesos y la temperatura media del Kernel. A pesar de la temperatura de ambiente, que es bastante elevada, el Zotac mantiene el tipo, y en los "peores" momentos de ocio no supera los 80°C. El rendimiento es estupendo, y esta vez seguro que no habrá mayor problema con los nuevos núcleos del sistema operativo.



No hay comentarios:

Publicar un comentario