CPUs modernas reduzem a velocidade do clock automaticamente quando ociosas. Isso normalmente é uma coisa boa e funciona de forma completamente transparente para o usuário, por exemplo, tecnologia Intel Speedstep . Por outro lado, algumas CPUs podem até ir além de sua velocidade máxima, quando não estão muito quentes, por exemplo, Intel TurboBoost . Note que outros fabricantes de CPU têm tecnologia similar.
Desta forma, o usuário obtém a máxima potência da CPU com consumo mínimo de energia.
Acontece que, às vezes, essas tecnologias não funcionam como planejado. Eu enfrento esse problema frequentemente com um programa chamado Squid . O uso da CPU ao desenhar no Squid on my Surface é baixo, o que implica em uma baixa velocidade de MHz da minha CPU. Como consequência, tudo parece lento e há um atraso perceptível ao desenhar.
No Linux, você pode definir a velocidade de um núcleo da CPU como "usuário root" com
echo 800000 > /sys/devices/system/cpu/cpuXX/cpufreq/scaling_min_freq
echo 1000000 > /sys/devices/system/cpu/cpuXX/cpufreq/scaling_max_freq
em que XX é o núcleo da CPU, por exemplo, 0 para o primeiro núcleo. 800000 é equivalente a 0,8 GHz, que é a velocidade mínima do meu processador. Esses comandos limitariam a CPU a operar apenas entre 0,8 GHz e 1 GHz, o que pode ser útil em um laptop para estender a vida útil da bateria. Definir a frequência de dimensionamento mínima e máxima para a velocidade máxima da sua CPU permitiria que o computador fosse executado na velocidade máxima.
No Windows o relógio RM foi o último programa que usei que permitia a manipulação fácil da velocidade da CPU. Esse programa só funcionou com CPUs até o Pentium M / AMD Athlon. Se alguém souber de programas que permitem a manipulação do relógio fácil, por favor, adicione na seção de comentários.
No Windows, há uma opção nas " Opções de energia registro do Windows . Portanto, use a seu próprio risco.
Este artigo Opções de energia - Adicionar ou remover " Estado do processador Mín / Máx " descreve como ativar e desativar as configurações.
Então, para trabalhar com o Squid, eu configurei o estado mínimo do processador para 70% e máximo para 99%. O motivo para usar 70% é que não quero que a CPU funcione o tempo todo no modo TurboBoost. Quando preciso de uma bateria de longa duração para o Surface, tenho outro perfil de energia com o mínimo de estado do processador definido em 5% e máximo de 30%. A desvantagem do modo como a Microsoft implementa a manipulação da velocidade da CPU é que não é possível fazer com que sua CPU funcione em 100% da carga de trabalho com uma velocidade de clock de 1GHz. Em vez disso, as opções de energia da Microsoft reduzirão a velocidade do clock E a quantidade máxima de tempo de CPU usado na velocidade de clock reduzida. Essa é a diferença na maneira como a velocidade da CPU pode ser reduzida / aumentada no Linux, como acabamos de mencionar.
Por exemplo Se você definir um estado de processador de 50% e a CPU funcionar apenas em 1.6GHz de uma CPU de 3.2GHz, então você estará usando apenas 50% do tempo de CPU de uma CPU que esteja executando a 50% da velocidade máxima da CPU, portanto você está usando 25 % De energia da CPU comparada a uma CPU que executa 100% na velocidade de 3.2GHz. Isso é algo para se ter em mente, já que valores baixos de% podem tornar seu computador realmente mais lento.