Escala da CPU: como a frequência atual pode estar fora do intervalo min-max?

2

Estou tentando entender por que minhas CPUs não funcionam em freqüências mais altas ( link relacionado )

Alguém pode me explicar como é possível que quando um min e um max são definidos, o valor efetivo finalmente sai desse intervalo?

$ cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq
3267000
$ cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq 
3300000
$ cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq 
1199960


$ cpupower frequency-info
analyzing CPU 0:
  driver: intel_pstate
  CPUs which run at the same hardware frequency: 0
  CPUs which need to have their frequency coordinated by software: 0
  maximum transition latency: 0.97 ms.
  hardware limits: 800 MHz - 3.30 GHz
  available cpufreq governors: performance, powersave
  current policy: frequency should be within 3.27 GHz and 3.30 GHz.
                  The governor "performance" may decide which speed to use
                  within this range.
  current CPU frequency is 1.20 GHz.
  boost state support:
    Supported: yes
    Active: yes
    25500 MHz max turbo 4 active cores
    25500 MHz max turbo 3 active cores
    25500 MHz max turbo 2 active cores
    25500 MHz max turbo 1 active cores

Além disso, alguém pode explicar a diferença entre cpuinfo_cur_freq e scaling_cur_freq por favor?

Problemas relacionados que abri para resolver meu problema (pode conter informações adicionais não mencionadas aqui que podem ser úteis)

Informação adicional:

$ sudo rdmsr -a 0x19a
0
0
0
0
rdmsr: No CPU 4
    
por Sebastien Lorber 20.07.2016 / 20:42

1 resposta

2

Dependendo do seu processador e do seu caso, cpuinfo_cur_freq e scaling_cur_freq são a mesma coisa.
Para alguns processadores, cpuinfo_cur_freq envolve uma leitura de hardware e pode ser "caro" em termos de tempo, razão pela qual exige que sudo acesse.

Sua freqüência de CPU pode estar fora dos limites que você definiu, porque o próprio processador pode recuar no PLL (Phase Locked Loop) se a carga for leve o suficiente, e independentemente do que você pediu. Não se preocupe, a freqüência da CPU aumentará muito rapidamente se houver trabalho a ser feito. No seu caso, você está usando o governador de desempenho, que dará o tempo de aceleração de frequência da CPU mais rápido possível.

Para sua outra questão referenciada, e como eu mencionei por lá, acho que Clock Modulation está envolvida, o que é um problema para o driver de freqüência da CPU intel_pstate. Para confirmar ou negar se a modulação do relógio está ativada, adicione esse resultado à sua pergunta:

$ sudo modprobe msr
$ sudo rdmsr -a 0x19a

Observe que o pacote msr-tools é necessário para a primitiva rdmsr. Vou decodificar as informações, uma vez fornecidas.

    
por Doug Smythies 20.07.2016 / 22:37