CPU orologio più lento dopo ogni ripresa dal sonno

7

Sto eseguendo kubuntu 15.10 su un Lenovo Y50-70 e ho un problema molto fastidioso con l'orologio della CPU: Ogni volta che il computer riprende dal sonno, l'orologio della CPU ha un valore massimo inferiore, e ciò non accade solo una volta, ma dopo ogni ripresa l'orologio è più lento, fino a quando non scende da 3,6 GHz a ~ 600 MHz.

[email protected]:~$ sudo -i
[sudo] password for alain: 
[email protected]:~# 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.60 GHz
  available cpufreq governors: performance, powersave
  current policy: frequency should be within 800 MHz and 3.60 GHz.
                  The governor "powersave" may decide which speed to use
                  within this range.
  current CPU frequency is 817 MHz (asserted by call to hardware).
  boost state support:
    Supported: yes
    Active: yes
[email protected]:~# cat /sys/devices/system/cpu/intel_pstate/max_perf_pct
100
[email protected]:~# 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.60 GHz
  available cpufreq governors: performance, powersave
  current policy: frequency should be within 800 MHz and 2.88 GHz.
                  The governor "powersave" may decide which speed to use
                  within this range.
  current CPU frequency is 800 MHz (asserted by call to hardware).
  boost state support:
    Supported: yes
    Active: yes
[email protected]:~# cat /sys/devices/system/cpu/intel_pstate/max_perf_pct
80
[email protected]:~# cat /sys/devices/system/cpu/intel_pstate/max_perf_pct
60
[email protected]:~# cat /sys/devices/system/cpu/intel_pstate/max_perf_pct
40
[email protected]:~# cat /sys/devices/system/cpu/intel_pstate/max_perf_pct                                 
40                                                                                                         
[email protected]:~# 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.60 GHz                                                                      
  available cpufreq governors: performance, powersave                                                      
  current policy: frequency should be within 800 MHz and 1.44 GHz.                                         
                  The governor "powersave" may decide which speed to use                                   
                  within this range.                                                                       
  current CPU frequency is 699 MHz (asserted by call to hardware).                                         
  boost state support:                                                                                     
    Supported: yes                                                                                         
    Active: yes                                                                                            
[email protected]:~# cat /sys/devices/system/cpu/intel_pstate/max_perf_pct                                 
40                                                                                                         
[email protected]:~# 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.60 GHz                                                                      
  available cpufreq governors: performance, powersave                                                      
  current policy: frequency should be within 800 MHz and 1.44 GHz.                                         
                  The governor "powersave" may decide which speed to use                                   
                  within this range.                                                                       
  current CPU frequency is 605 MHz (asserted by call to hardware).                                         
  boost state support:                                                                                     
    Supported: yes                                                                                         
    Active: yes                                                                                            
[email protected]:~#                                                                                       

Ho messo il computer addormentato tra i comandi sopra. Come puoi vedere, prima max_perf_pct viene ridotto a incrementi fino a raggiungere 40, quindi rimane 40 ma la velocità di clock continua a ridursi. Non importa se il laptop è collegato o meno, e la temperatura è normale.

Penso che possa essere correlato a questo bug: link

Il problema più grande è che non riesco a trovare un modo per impostare manualmente il massimo clock a 3,6 GHz. Per prima cosa ho provato cpupower frequency-set -u 3.60GHz :

[email protected]:~# cpupower frequency-set -u 3.60GHz
Setting cpu: 0
Setting cpu: 1
Setting cpu: 2
Setting cpu: 3
Setting cpu: 4
Setting cpu: 5
Setting cpu: 6
Setting cpu: 7
[email protected]:~# 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.60 GHz
  available cpufreq governors: performance, powersave
  current policy: frequency should be within 800 MHz and 1.44 GHz.
                  The governor "powersave" may decide which speed to use
                  within this range.
  current CPU frequency is 699 MHz (asserted by call to hardware).
  boost state support:
    Supported: yes
    Active: yes
[email protected]:~# cat /sys/devices/system/cpu/intel_pstate/max_perf_pct
40

ma sembra essere il modo sbagliato perché il driver Intel P-State è usato, quindi ho provato echo 100 >/sys/devices/system/cpu/intel_pstate/max_perf_pct senza effetto:

[email protected]:~# echo 100 >/sys/devices/system/cpu/intel_pstate/max_perf_pct
[email protected]:~# 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.60 GHz
  available cpufreq governors: performance, powersave
  current policy: frequency should be within 800 MHz and 1.44 GHz.
                  The governor "powersave" may decide which speed to use
                  within this range.
  current CPU frequency is 700 MHz (asserted by call to hardware).
  boost state support:
    Supported: yes
    Active: yes
[email protected]:~# cat /sys/devices/system/cpu/intel_pstate/max_perf_pct
40

Ho anche provato il performance governor, senza successo.

Come posso riportare la massima frequenza di clock a 3,6 GHz?

    
posta alain 12.03.2016 - 14:37

1 risposta

6

Il problema che stai riscontrando è stato segnalato molte volte.
Per favore fai riferimento a questo bug bug report .

Il problema è stato isolato da un particolare commit nell'albero del kernel. Quel commit è stato anche sostituito con alcune versioni precedenti del kernel stabili.
Tuttavia, la vera causa principale è un problema del BIOS di Lenovo. Citando dal thread e-mail linux-pm:

  

Il BIOS riporta il valore del punto di scatto passivo falso, che è 0 gradi Celsius   ...   Per ovviare a questo falso BIOS, dovremmo disabilitare quelli   punti di intervento non validi controllando il valore del punto di scatto,

Se si torna indietro di una o due versioni, Lenovo funzionerà correttamente (è noto che la versione 4.2.0-19 funzioni correttamente).

Il tuo problema non è la modulazione dell'orologio (registro 0x19A) correlata, a meno che la batteria non sia al di sotto del 30% (non dimostrata, ma sospetta).

Riferimenti: link
Strani problemi di scalabilità cpufreq: indipendentemente dal governor, cpufreq cade in modo incrementale al risveglio
i3 ha rallentato a 500Mhz quando la batteria ha meno del 30%
link

    
risposta data Doug Smythies 13.03.2016 - 01:11

Leggi altre domande sui tag