Existe uma maneira de desativar as etapas do Intel SpeedStep em um servidor Ubuntu usando um aplicativo de linha de comando?

3

Não podemos desabilitá-lo usando o BIOS, porque o Turbo é desligado, bem como um efeito colateral (que BIOS ruim!). Eu estou procurando uma ferramenta de linha de comando simples para o Ubuntu 12.04 LTS Server que pode fazer isso.

Sei que no Windows, se você definir as Opções de energia como Alto desempenho, o SpeedStep estará desabilitado, mas como posso fazer isso no Ubuntu Linux usando um aplicativo de linha de comando?

    
por Michael Goldshteyn 26.07.2012 / 22:19

1 resposta

8

O kernel do Ubuntu é fornecido com controladores de controle da CPU, normalmente definidos como ondemand , eles irão regular o desempenho da sua CPU em seu sistema Ubuntu.

Você pode alterar a configuração de desempenho da CPU no Ubuntu por CPU lógica.

Comece lendo as configurações atuais disponíveis para o seu sistema:

sudo cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors

isto retornará uma lista de configurações disponíveis que você pode usar para regular cada núcleo da sua CPU, se puder, você deve configurá-las para o desempenho máximo selecionando a opção performance . Isso fará com que seus núcleos de CPU funcionem sempre na frequência máxima.

Sabendo quais opções você tem e se a opção performance está disponível, você pode configurar cada núcleo para o modo performance com o comando:

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

isso fará com que cpu0 (primeiro núcleo) seja executado o tempo todo no desempenho máximo. Faça isso por todos os núcleos lógicos da sua CPU.

Você pode então verificar se a opção foi alterada com sucesso com o comando:

sudo cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor

isto irá verificar a opção atual do conjunto para cpu0 (primeiro núcleo). Verifique se a alteração foi bem-sucedida para todos os núcleos e se tudo foi definido corretamente, você está pronto: O Intel SpeedStep estará ativado , mas todos os seus núcleos estarão funcionando com velocidade máxima o tempo todo.

Você pode verificar e obter informações sobre a frequência real usando cpufreq-info do pacote cpufrequtils no repositório do universo, ele relatará por núcleo a velocidade real e muitas outras informações, incluindo o regulador do conjunto, mas você precisa instalá-lo primeiro usando o comando sudo apt-get install cpufrequtils .

cpufreq-info

cpufrequtils 007: cpufreq-info (C) Dominik Brodowski 2004-2009
Report errors and bugs to [email protected], please.
analyzing CPU 0:
  driver: powernow-k8
  CPUs which run at the same hardware frequency: 0
  CPUs which need to have their frequency coordinated by software: 0
  maximum transition latency: 8.0 us.
  hardware limits: 800 MHz - 3.00 GHz
  available frequency steps: 3.00 GHz, 2.30 GHz, 1.80 GHz, 800 MHz
  available cpufreq governors: conservative, ondemand, userspace, powersave, performance
  current policy: frequency should be within 800 MHz and 3.00 GHz.
                  The governor "ondemand" may decide which speed to use
                  within this range.
  current CPU frequency is 800 MHz.
  cpufreq stats: 3.00 GHz:10.45%, 2.30 GHz:0.29%, 1.80 GHz:1.72%, 800 MHz:87.55%  (28605)
    
por 26.07.2012 / 22:34