Se estiver usando o GRUB:
Com sudo
, edite /etc/default/grub
e edite a linha GRUB_CMDLINE_LINUX_DEFAULT
adicionando intel_idle.max_cstate=1
ao que já possa estar lá. Depois de salvar o arquivo, execute sudo update-grub
e reinicialize. Sugira que você salve uma cópia do seu arquivo grub original primeiro.
Para verificar se o seu cstate não está indo mais fundo que 1, use o turbostat (pacote: linux-tools-common).
Exemplo (onde já existe algo no GRUB_CMDLINE_LINUX_DEFAULT
):
Antes (editado):
$ sudo turbostat -S --debug sleep 10
Avg_MHz %Busy Bzy_MHz TSC_MHz SMI CPU%c1 CPU%c3 CPU%c6 CPU%c7 CoreTmp PkgTmp Pkg%pc2 Pkg%pc3 Pkg%pc6 PkgWatt CorWatt GFXWatt
1 0.04 1654 3411 0 0.12 0.03 99.82 0.00 29 29 0.07 0.03 99.51 3.85 0.20 0.23
10.001629 sec
Faça a alteração (usando meu método para controle de configuração):
~/config/etc/default$ cp /etc/default/grub ./
~/config/etc/default$ cp grub grub.original
~/config/etc/default$ nano grub
Altere isto:
GRUB_CMDLINE_LINUX_DEFAULT="ipv6.disable=1"
Para isso:
GRUB_CMDLINE_LINUX_DEFAULT="ipv6.disable=1 intel_idle.max_cstate=1"
E atualize:
~/config/etc/default$ sudo cp grub /etc/default
~/config/etc/default$ sudo update-grub
~/config/etc/default$ sudo reboot -r now
Agora verifique (editado):
$ sudo turbostat -S --debug sleep 10
Avg_MHz %Busy Bzy_MHz TSC_MHz SMI CPU%c1 CPU%c3 CPU%c6 CPU%c7 CoreTmp PkgTmp Pkg%pc2 Pkg%pc3 Pkg%pc6 PkgWatt CorWatt GFXWatt
0 0.02 1920 3411 0 99.98 0.00 0.00 0.00 39 39 0.00 0.00 0.00 10.49 6.66 0.23
10.001079 sec
Você também deve ver essas mensagens em dmesg
e var/log/kern.log
(editado):
~$ dmesg | grep intel_idle
[ 1.019709] intel_idle: max_cstate 1 reached
$ grep intel_idle /var/log/kern.log
Mar 23 08:10:32 s15 kernel: [ 1.019709] intel_idle: max_cstate 1 reached