cpu hotplug para o Ubuntu

0

fazendo

for file in /sys/devices/system/cpu/cpu*/online; do echo 0 > $file; done

nós definimos o cpus off-line. Existe um script para fazer o trabalho do hotplug, detectar o uso de cpu e acima de um cpus% set on-line e abaixo de um% de uso definido novamente cpu off-line? se não houver nenhum script já feito, existe uma maneira de detectar somente o uso atual da CPU e "fazer" algo se o uso estiver acima ...%?

~ EDITANDO minha pergunta:

Eu estou atualmente aqui:

#!/bin/bash

while true
do
 if (echo $[100-$(vmstat 1 2|tail -1|awk '{print $15}')] > 5) then
 for file in /sys/devices/system/cpu/cpu*/online; do echo 1 > $file; done
 fi
 if (echo $[100-$(vmstat 1 2|tail -1|awk '{print $15}')] < 5) then
 for file in /sys/devices/system/cpu/cpu*/online; do echo 0 > $file; done
 fi
 sleep 3
done

pfff deve funcionar ....

você pode, por favor, me corrigir?

    
por Pavlos Theodorou 02.02.2017 / 07:13

1 resposta

0

Finalmente. Este é o primeiro hotplug cpu para o Ubuntu. Não é muito, mas é o melhor que posso fazer agora para os antigos processadores multi-core que têm grande consumo de bateria.

Faça o download do script no link abaixo, torne-o executável e copie e cole em /etc/init.d usando terminal.

sudo cp /<path to the script>/hotplug.sh /etc/init.d

atualize o rc.d para executá-lo no boot

sudo update-rc.d hotplug.sh defaults

feito. agora seu laptop consumirá muito menos bateria do que antes.

Não há necessidade de melhorar ainda mais o script e adicionar uma verificação para cada núcleo de cpu, porque isso aumentará a carga. Os processadores mais recentes têm um estado C para fazer isso e isso não tem um grande impacto na carga, mas neste caso, se fizermos um roteiro enorme para rodar o tempo todo sem descanso, ele definitivamente aumentará a carga e perderemos a estabilidade e suavidade.

Link para download

    
por Pavlos Theodorou 04.02.2017 / 00:51