Como controlar a temperatura do seu sistema com o Linux Thermal Daemon

O Thermald é uma resposta ao superaquecimento do sistema causado pela alta performance dos modernos processadores Intel — o que inclui a linha Atom e Core.
A demanda por mais desempenho em sistemas desktop ou portáteis resulta em um problema crescente de dissipação de energia.
Ao mesmo tempo, a necessidade de reduzir a escala dos dispositivos aumenta os desafios para incrementar a performance dos sistemas e gerenciar o problema do calor gerado.
Fire flames isolated on white background
O projeto Linux Thermal Daemon ou thermald tem forte apoio da Intel e o propósito de lidar proativamente com a temperatura do sistema sem impactar significativamente a sua performance — fazendo uso do P-states, T-states e do Intel power clamp driver.
Neste texto, vou mostrar como instalar o Linux Thermal Daemon no Ubuntu e no Fedora, além de ensinar como compilar e instalar o sistema (para quem deseja usar a versão mais nova).
A documentação oficial (veja o link ao final) cita os seguintes pré-requisitos:

  • Hardware com processador Intel da família Atom ou Core.
  • Kernel 3.13 ou superior (já presente no Ubuntu 14.04 LTS, no Fedora 21 ou superior).
  • Drivers Intel power capping, Intel P State e Intel Power Clamp.

Pra resumir, se sua máquina tem um processador Intel, com mais de 4 anos de idade e se você estiver usando uma versão atual do Linux — então você, provavelmente, tem tudo.

Como instalar thermald no Fedora

Se você não se importa de usar a versão padrão e já quiser mergulhar logo no sistema, pode usar o yum para instalar fácil o aplicativo:

yum install thermald

Se preferir, como eu, a versão compilada (dá pra ter as duas!), acompanhe o passo a passo, faça o download do código fonte, neste site.
O passo a passo para instalar no Fedora foi baseado na documentação oficial de instalação e não foi testado no meu sistema. Portanto, não sei se funciona — faça por sua própria conta e risco.


Depois de fazer o download do código fonte, instale os seguinte itens:

yum install automake
yum install gcc
yum install gcc-c++
yum install glib-devel
yum install dbus-glib-devel
yum install libxml2-devel

Entre no diretório em que você fez o download do pacote zip e extraia o código:

unzip thermal_daemon-master.zip

Entre no diretório criado e siga os passos:

cd thermal_daemon-master/
./autogen.sh
./configure prefix=/usr
make
sudo make install

Para iniciar o serviço, use o seguinte comando:

sudo systemctl start thermald.service

Para obter o status do serviço, enquanto ele estiver sendo executado:

sudo systemctl status thermald.service

Para interromper o serviço:

sudo systemctl stop thermald.service

Como instalar o Linux Thermal Daemon no Ubuntu

Tal como no Fedora, o Ubuntu 14.04 LTS tem uma versão estável do thermald em seus repositórios, que pode ser instalado com a ferramenta padrão apt-get.
Veja como:

sudo apt-get install thermald

Alternativamente, você pode baixar o código fonte e compilar o thermald — o procedimento não é difícil e ainda possibilita usar uma versão estável mais nova.

  • Se você tiver dúvidas sobre como compilar e instalar aplicativos no Linux, leia este curto tutorial.


Faça o download do código fonte do thermald, aqui. Ou use o comando wget, da seguinte forma:

wget https://github.com/01org/thermal_daemon/archive/master.zip

A seguir, instale os seguintes pacotes:

sudo apt-get install autoconf automake g++ libglib2.0-dev libdbus-1-dev libdbus-glib-1-dev libxml2-dev

Agora, descompacte o arquivo baixado via wget:

unzip master.zip

… e siga os seguintes passos:

./autogen.sh
./configure prefix=/usr
make
sudo make install

OBS.: a documentação adverte para ignorar algum erro referente ao systemd.



Após a instalação, copie o arquivo de configuração padrão do aplicativo pro init:

sudo cp data/thermald.conf /etc/init/

Para iniciar serviço use o seguinte comando:

sudo start thermald

Para interromper, faça o seguinte:

sudo stop thermald

Finalmente, sinta-se à vontade para comentar sobre como o thermald funcionou pra você.

Referências

Publicado por

Elias Praciano

Autor de tecnologia (livre, de preferência), apaixonado por programação e astronomia.
Fã de séries, como “Rick and Morty” e “BoJack Horseman”.
Me siga no Twitter e vamos trocar ideias!

3 thoughts on “Como controlar a temperatura do seu sistema com o Linux Thermal Daemon”

  1. Uso o Fedora 21, Gnome, Deu erro em ambas instalaćoes. No “yum install thermald” – responde “Nenhum pacote thermald disponível”, ja na versáo compilada: quando digita o make, responde:

    make all-recursive
    make[1]: Entering directory ‘/home/lcmattos/Downloads/thermal_daemon-master’
    Making all in data
    make[2]: Entering directory ‘/home/lcmattos/Downloads/thermal_daemon-master/data’
    make[2]: Nothing to be done for ‘all’.
    make[2]: Leaving directory ‘/home/lcmattos/Downloads/thermal_daemon-master/data’
    make[2]: Entering directory ‘/home/lcmattos/Downloads/thermal_daemon-master’
    g++ -DHAVE_CONFIG_H -I. -I./src -DTDLOCALEDIR=\”/usr/share/locale\” -DGLIBC_SUPPORT -I/usr/include/dbus-1.0 -I/usr/lib64/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -DGLIB_VERSION_MIN_REQUIRED=GLIB_VERSION_2_26 ‘-DGLIB_VERSION_MAX_ALLOWED=G_ENCODE_VERSION(2,34)’ -I/usr/include/libxml2 -DTDRUNDIR=\”/var/run/thermald\” -DTDCONFDIR=\”/etc/thermald\” -I src -fpermissive -fopenmp -Wreorder -Wsign-compare -Wreturn-type -Wunused-but-set-variable -Wformat -g -O2 -MT src/thermald-main.o -MD -MP -MF src/.deps/thermald-main.Tpo -c -o src/thermald-main.o `test -f ‘src/main.cpp’ || echo ‘./’`src/main.cpp
    In file included from src/thd_preference.h:29:0,
    from src/main.cpp:43:
    /usr/include/c++/4.9.2/string:38:28: fatal error: bits/c++config.h: Arquivo ou diretório não encontrado
    #include
    ^
    compilation terminated.
    Makefile:691: recipe for target ‘src/thermald-main.o’ failed
    make[2]: *** [src/thermald-main.o] Error 1
    make[2]: Leaving directory ‘/home/lcmattos/Downloads/thermal_daemon-master’
    Makefile:1199: recipe for target ‘all-recursive’ failed
    make[1]: *** [all-recursive] Error 1
    make[1]: Leaving directory ‘/home/lcmattos/Downloads/thermal_daemon-master’
    Makefile:470: recipe for target ‘all’ failed
    make: *** [all] Error 2

    Tem como resolver? Grato.

  2. Com o thermald, o meu notebook consegue se manter a uma temperatura 4 graus menor e o cooler parece mais previsível.
    Muito bom!!

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *