Здравейте колеги,
Както знаете, си взех нов лаптоп Леново и колкото и да му се радвам, искам да споделя малко препятствия с прегряването, както и моето скриптче за решаването му. Смятам че това ще послужи на всеки, който желае да си запази лаптопа за по-дълго време.
Къде е причината?В моя случай разполагам с
i7-8750H, който е прекрасен процесор за лаптопи, но реално има добра базова (
2.20 GHz) и прекалено голяма максимална тактова чистото (
4.10 GHz). Също така трябва да отбележа, че е с 6 реални и 12 логически ядра (
т.е. 6 процесора)
От тук следва, че всеки път когато се натовари (примерно играеш игра или извършваш cpu интензивни действия)
turbo-то започва да клоква процесора. Разбира се
4.10 GHz е невъзможно за поддържане при какъвто и да е охладител за лаптоп (мака и
моя модел да е с доста добър) и в момента на достигане на максимална температура (9* градуса) започва да го коригира чрез
cpu throttling.
Няма нищо лошо в използването на тази технология, но реално това означава , че седиш постоянно на
99 градуса, когато го товариш (представете си при разархивиране на огромен архив).
Моите решения:За безпроблемна работа просто намалям максималната чистота на турбото или го изключвам напълно, ако искам и да ми е тихичко.
Ето и скрипта:
GeSHi (Bash):
#!/bin/bash
echo "Please select maximum CPU frequency:"
echo ""
PS3='Please enter your choice: '
options=("4.1Ghz (default)" "3.6Ghz (normal)" "3.1Ghz (silent)" "Intel Turbo ON" "Intel Turbo OFF" "Quit")
select opt in "${options[@]}"
do
case $opt in
"4.1Ghz (default)")
for cpunumber in $(seq 0 11) ;
do echo "4100000" | sudo tee /sys/devices/system/cpu/cpu$cpunumber/cpufreq/scaling_max_freq ;
done
break
;;
"3.6Ghz (normal)")
for cpunumber in $(seq 0 11) ;
do echo "3600000" | sudo tee /sys/devices/system/cpu/cpu$cpunumber/cpufreq/scaling_max_freq ;
done
break
;;
"3.1Ghz (silent)")
for cpunumber in $(seq 0 11) ;
do echo "3100000" | sudo tee /sys/devices/system/cpu/cpu$cpunumber/cpufreq/scaling_max_freq ;
done
break
;;
"Intel Turbo ON")
echo "0" | sudo tee /sys/devices/system/cpu/intel_pstate/no_turbo
break
;;
"Intel Turbo OFF")
echo "1" | sudo tee /sys/devices/system/cpu/intel_pstate/no_turbo
break
;;
"Quit")
break
;;
*) echo "invalid option $REPLY";;
esac
done
* Това разбира се е за интелски процесори и скрипта е написан за моя брой на логически ядра / $(seq 0 11) / и моите мегахерци / do echo "4100000..." /Та, ако имате мнения по-въпроса или просто да споделите дали сте имали подобни проблеми, ще се радвам да ги чуя.