Как установить тепловое дросселирование самых низких тактовых частот процессора в Linux?

У меня огромные проблемы с тепловым дросселированием на моем Thinkpad T420 с Core i7 и Nvidia Quadro. Когда начинается регулирование, я получаю сообщение ядра:

[42544.677294] [Hardware Error]: Machine check events logged
[42672.480582] CPU3: Package temperature above threshold, cpu clock throttled (total events = 1023)
[42672.480587] CPU0: Package temperature above threshold, cpu clock throttled (total events = 1023)
[42672.480591] CPU2: Package temperature above threshold, cpu clock throttled (total events = 1023)
[42672.480594] CPU1: Package temperature above threshold, cpu clock throttled (total events = 1023)

Проблема действительно встала мне на нервы, когда я недавно начал играть в игры. After literally couple of minutes the game can become unplayable. I have partially solved the problem after putting a limit on maximal clock frequency:

for i in 0 1 2 3; do echo 2000000 > /sys/devices/system/cpu/cpu$i/cpufreq/scaling_max_freq;done

However, when the throttling starts on its own it sets the clocks to mere 800Mhz and I am sure 1.6Ghz would be enough to cool down the cpus. Any ideas how to set the throttle lowest clock?

1 ответ

Вы захотите сделать несколько сценариев, чтобы перенастроить настройки электропитания для вашей задачи под рукой.

У меня есть сценарий для 2400 МГц, 1600 МГц, 800 МГц - 2200 МГц и 800 МГц

sudo cpufreq-set -g conservative -d 1600MHz -u 1600MHz -c 0
sudo cpufreq-set -g conservative -d 1600MHz -u 1600MHz -c 1
sudo cpufreq-set -g conservative -d 1600MHz -u 1600MHz -c 2
sudo cpufreq-set -g conservative -d 1600MHz -u 1600MHz -c 3
sudo cpufreq-set -g conservative -d 1600MHz -u 1600MHz -c 4
sudo cpufreq-set -g conservative -d 1600MHz -u 1600MHz -c 5
sudo cpufreq-set -g conservative -d 1600MHz -u 1600MHz -c 6
sudo cpufreq-set -g conservative -d 1600MHz -u 1600MHz -c 7

Вам нужно установить cpufreq-set заранее:

sudo apt-get install cpufrequtils
Другие вопросы по тегам