Por que meu Pi está funcionando a 700 MHz o tempo todo?

12

Meu RasPi está configurado para overclock de 900 MHz usando raspi-config, mas continua rodando a 700 MHz , mesmo sob carga. Eu já encontrei esta resposta e meu sistema também está funcionando com dinâmica

for info in /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_*
do 
  echo ${info}
  sudo cat ${info}
done

Resultado:

/sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_cur_freq
700000
/sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_max_freq
900000
/sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_min_freq
700000
/sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_transition_latency
355000

Mesmo ao veicular arquivos grandes via SMB e em execução apt-get update, a frequência permanecerá em 700 MHz. Por quê?

Arne
fonte
Oh uau, agora eu vi duas vezes indo para 900 MHz. Estou usando watch -n 1 cat /sys/...para monitorar a frequência. Talvez eu não tenha um problema, afinal.
Arne
1
Fazer muitas E / S (veicular arquivos, fazer o download via apt) não é uma atividade intensiva do processador, pois a própria E / S é um gargalo - ou seja, o processador deve esperar por isso, enquanto o sistema está ocupado trabalhando o mais rápido possível em um Nesse sentido, o processador pode estar praticamente ocioso.
goldilocks
@goldilocks: Bem, o smbd e o ntfs-3g estavam produzindo quase 100% de carga, cerca de 50% de usuário e 50% de carga do sistema cada. Eu teria assumido que é o suficiente, mas talvez a carga do sistema fosse algum tipo de espera de E / S.
Arne
FYI, aqui está uma maneira mais fácil de imprimir suas configurações: grep "" / sys / devices / system / cpu / cpu0 / cpufreq / cpuinfo_ * "
Ludovic Ronsin em

Respostas:

14

Mesmo com a frequência dinâmica definida, o Raspberry Pi possui um limite de escala de frequência padrão muito alto.

Para citar esta postagem de blog sobre overclock do Pi:

O regulador ondemand usado no Raspberry Pi aumentará a velocidade da CPU para o valor máximo configurado sempre que achar que está ocupado mais de 95% do tempo. Isso parece justo o suficiente para a maioria dos casos, mas se você quiser esse aumento de velocidade extra, mesmo quando o sistema estiver executando tarefas um pouco mais leves, será necessário diminuir o limite de carga. Isso também é feito facilmente, escrevendo um valor inteiro em um arquivo (você pode colocar o seguinte, por exemplo, no /etc/rc.localarquivo de inicialização):

eco 60> / sys / devices / system / cpu / cpufreq / ondemand / up_threshold

Aqui estamos dizendo que gostaríamos de ativar o Modo Turbo quando a CPU estiver ocupada pelo menos 60% das vezes. Isso é suficiente para fazer com que o Pi se sinta um pouco mais exigente durante o uso geral.

Você também pode definir o desempenho do governador da CPU em vez de ondemand usando um comando semelhante:

echo performance > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor

O desempenho manterá a CPU com clock de 100% o tempo todo. Informações detalhadas sobre os modos disponíveis podem ser encontradas aqui: https://www.kernel.org/doc/Documentation/cpu-freq/governors.txt

Jonathan Milford
fonte
Era isso que eu estava procurando!
Arne18:
0

Fiz um pequeno programa para automatizar o processo que Jonathan Milford descreveu muito bem. Ele faz isso a cada inicialização para persistir.

Link para o meu projeto

MeisterD
fonte