Ubuntu 20.04. Разогнать Intel i7-9700k автоматически?

У меня новая Intel i7-9700k, работающая в Ubuntu 20.04. Этот процессор должен работать на базовой частоте 3,6 ГГц с максимальной частотой 4,9 ГГц в режиме разгона.

Сегодня я провел дорогостоящее вычисление и взглянул на тактовые частоты с

watch -n.1 "cat /proc/cpuinfo | grep \"^[c]pu MHz\""

и тактовыми процессорами ядра с тактовой частотой ~ 4,5 ГГц. Как это может быть? Я не менял настройки BIOS? Температуры находятся в пределах нормы в соответствии с датчиками lm (в основном ниже 80 'C). По требованию:

cat /sys/devices/system/cpu/cpu*/cpufreq/scaling_driver

возвращает

intel_pstate
intel_pstate
intel_pstate
intel_pstate
intel_pstate
intel_pstate
intel_pstate
intel_pstate

, а

cat /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor

возвращает

powersave
powersave
powersave
powersave
powersave
powersave
powersave
powersave
0
задан 25 June 2020 в 03:34

2 ответа

когда занят

Когда вы запускаете свои «дорогие вычисления», существует несколько причин, по которым ваш процессор может не достигать 4,9 ГГц, а только достигать ~ 4,5 ГГц. Одной из вероятных причин, особенно если ваше приложение является многопоточным, является типичное максимальное снижение частоты в зависимости от количества активных ядер. Пример (i7-2600K), выдержка из турбостата:
cpu1: MSR_TURBO_RATIO_LIMIT: 0x23242526
35 * 100.0 = 3500.0 MHz max turbo 4 active cores
36 * 100.0 = 3600.0 MHz max turbo 3 active cores
37 * 100.0 = 3700.0 MHz max turbo 2 active cores
38 * 100.0 = 3800.0 MHz max turbo 1 active cores

Обычно это очень необычно видеть (i5-9600K, но это не значение по умолчанию для процессора, я сделал это в BIOS):

cpu3: MSR_TURBO_RATIO_LIMIT: 0x2b2b2e2e2e2e2e2e
43 * 100.0 = 4300.0 MHz max turbo 8 active cores  <<< I don't have 8 cores
43 * 100.0 = 4300.0 MHz max turbo 7 active cores  <<< I don't have 7 cores
46 * 100.0 = 4600.0 MHz max turbo 6 active cores
46 * 100.0 = 4600.0 MHz max turbo 5 active cores
46 * 100.0 = 4600.0 MHz max turbo 4 active cores
46 * 100.0 = 4600.0 MHz max turbo 3 active cores
46 * 100.0 = 4600.0 MHz max turbo 2 active cores
46 * 100.0 = 4600.0 MHz max turbo 1 active cores

Другие причины включают ваши настройки смещения питания, ожидания ввода-вывода, питания или тепловое дросселирование (вы упомянули, что тепловая проблема не в этом, а просто в том, что вы говорите). Если вы хотите больше всего, вы можете использовать регулятор производительности вместо регулятора powersave. В то время как многие рекомендуют инструменты более высокого уровня, я использую примитивы:

doug@s18:~/c$ cat /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor
powersave
powersave
powersave
powersave
powersave
powersave
doug@s18:~/c$ echo performance | sudo tee /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor
performance
doug@s18:~/c$ cat /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor
performance
performance
performance
performance
performance
performance

в режиме ожидания

Когда один из них производит выборку CPU с такой высокой скоростью, 10 раз в секунду, часто сама команда оказывает влияние на систему, что приводит к смещению в что наблюдается. Имейте в виду, что незанятые ЦП могут переходить в очень глубокие незанятые состояния в течение нескольких секунд за раз, и пробуждение их с высокой частотой просто для того, чтобы сэмплировать частоту, не является хорошей идеей, но чрезвычайно распространено среди пользователей. Если вы хотите знать, что происходит с вашей системой, я бы предложил использовать тубостат по двум причинам: это действительно хороший инструмент; Это также предпочтительный инструмент для эскалации вверх по течению. Но, пожалуйста, пробуйте медленно. Пример (в основном я нахожу сводную информацию достаточно хорошей, но вы можете углубиться в большую часть информации. Я оставил строки, относящиеся к HWP, из первоначального потока информации):

$ sudo turbostat --Summary --show Busy%,Bzy_MHz,PkgTmp,PkgWatt,GFXWatt,IRQ --interval 6
...
CPUID(6): APERF, TURBO, DTS, PTM, HWP, HWPnotify, HWPwindow, HWPepp, No-HWPpkg, EPB
...
cpu0: MSR_PM_ENABLE: 0x00000001 (HWP)
cpu0: MSR_HWP_CAPABILITIES: 0x0109252e (high 46 guar 37 eff 9 low 1)
cpu0: MSR_HWP_REQUEST: 0x8000ff01 (min 1 max 255 des 0 epp 0x80 window 0x0 pkg 0x0)
cpu0: MSR_HWP_INTERRUPT: 0x00000001 (EN_Guaranteed_Perf_Change, Dis_Excursion_Min)
...
Busy%   Bzy_MHz IRQ     PkgTmp  PkgWatt GFXWatt
0.03    956     262     31      1.82    0.00
0.03    800     122     31      1.85    0.00  <<< Notice the busy % and low CPU freq.
0.03    800     131     32      1.86    0.00
0.03    800     166     31      1.86    0.00
0.03    800     140     31      1.86    0.00
0.03    800     128     31      1.83    0.00
0.03    800     128     31      1.78    0.00
0.02    800     99      31      1.75    0.00
0.03    800     139     31      1.78    0.00
0.02    800     108     31      1.58    0.00
0.03    800     144     31      1.66    0.00
0.03    800     121     31      1.72    0.00

Теперь, просто потому, что в вашем случае вы видите много более высокие частоты процессора, это не означает, что ваше энергопотребление намного, если вообще есть, выше. Если частота выше, процессор также завершает свою работу быстрее и быстрее и дольше возвращается в спящий режим. Пример:

Busy%   Bzy_MHz IRQ     PkgTmp  PkgWatt GFXWatt
0.02    800     100     31      1.90    0.00  <<< notice slightly different baseline than above (different kernel today)
0.02    800     93      31      1.90    0.00
0.03    800     130     31      1.90    0.00
0.05    800     208     31      1.90    0.00
0.04    800     169     31      1.90    0.00
0.05    1069    199     31      1.91    0.00
0.06    1904    285     31      1.94    0.00
0.00    4548    98      31      1.93    0.00
0.00    4600    89      32      1.93    0.00
0.01    4545    129     32      1.93    0.00 <<< Cost was about 0.03 watts.
0.00    4601    109     31      1.93    0.00
0.01    4559    140     31      1.94    0.00
0
ответ дан 30 July 2020 в 22:20

Я прочитал ваш вопрос, что вы удивлены, увидев такие высокие значения частоты. Выбор скоростей ядра не прост. Вы можете получить более подробную информацию, набрав команду cpufreq-info . В соответствии с действующей политикой должно отображаться, что ваш регулятор может выбирать между 800 МГц и 4,90 ГГц или аналогичными. (Мой ЦП i9-9900K и показывает между 800 МГц и 5,00 ГГц .)

Если вы действительно хотите ограничить частоту, вы можете использовать cpufreq-set .

0
ответ дан 30 July 2020 в 22:20

Другие вопросы по тегам:

Похожие вопросы: