Высокая температура процессора при загрузке + шум вентилятора на Ubuntu / Thinkpad T490

I've recently installed Ubuntu 20.04 on my Thinkpad T490 and i noticed something strage and different on CPU temperatures on Ubuntu compared to Windows.

I don't know why, but on boot the fan spins very fast (probably due to high CPU temp), and this never happened on Windows 10.

Somebody who knows why? I also tried "thinkfan", but I think it's better to control the fan using the BIOS default configuration (wich I think is the one the Lenovo Vantage app uses).

1
задан 20 July 2020 в 23:50

1 ответ

Ubuntu загружается с регулятором масштабирования частоты процессора, установленным в производительность. По умолчанию он переключается на что-то менее энергоемкое через несколько секунд, в зависимости от вашего процессора (около 10 для моего). Раньше это была 1 минута, но, похоже, это изменилось с 20.04.

Я не знаю, что делает Windows и почему.

Конфигурация ядра определяет, какой драйвер и регулятор масштабирования частоты процессора будут использоваться по умолчанию, и во время загрузки. Для текущего ядра 20.04, универсального 5.4.0-40 (и это не имеет значения, если я отстаю здесь):

/boot/config-5.4.0-40-generic соответствующая область:

#
# CPU Frequency scaling
#
CONFIG_CPU_FREQ=y
CONFIG_CPU_FREQ_GOV_ATTR_SET=y
CONFIG_CPU_FREQ_GOV_COMMON=y
CONFIG_CPU_FREQ_STAT=y
CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y
# CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE is not set
# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set
# CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND is not set
# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set
# CONFIG_CPU_FREQ_DEFAULT_GOV_SCHEDUTIL is not set
CONFIG_CPU_FREQ_GOV_PERFORMANCE=y
CONFIG_CPU_FREQ_GOV_POWERSAVE=y
CONFIG_CPU_FREQ_GOV_USERSPACE=y
CONFIG_CPU_FREQ_GOV_ONDEMAND=y
CONFIG_CPU_FREQ_GOV_CONSERVATIVE=y
CONFIG_CPU_FREQ_GOV_SCHEDUTIL=y

#
# CPU frequency scaling drivers
#
CONFIG_X86_INTEL_PSTATE=y
CONFIG_X86_PCC_CPUFREQ=y
CONFIG_X86_ACPI_CPUFREQ=y
CONFIG_X86_ACPI_CPUFREQ_CPB=y
CONFIG_X86_POWERNOW_K8=y
CONFIG_X86_AMD_FREQ_SENSITIVITY=m
CONFIG_X86_SPEEDSTEP_CENTRINO=y
CONFIG_X86_P4_CLOCKMOD=m

И вы можете наблюдать производительность регулятор по умолчанию. Это Ubuntu, а не Linux.

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

#
# CPU Frequency scaling
#
CONFIG_CPU_FREQ=y
CONFIG_CPU_FREQ_GOV_ATTR_SET=y
CONFIG_CPU_FREQ_GOV_COMMON=y
CONFIG_CPU_FREQ_STAT=y
# CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE is not set
CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE=y
# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set
# CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND is not set
# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set
# CONFIG_CPU_FREQ_DEFAULT_GOV_SCHEDUTIL is not set
CONFIG_CPU_FREQ_GOV_PERFORMANCE=y
CONFIG_CPU_FREQ_GOV_POWERSAVE=y
CONFIG_CPU_FREQ_GOV_USERSPACE=y
CONFIG_CPU_FREQ_GOV_ONDEMAND=y
CONFIG_CPU_FREQ_GOV_CONSERVATIVE=y
CONFIG_CPU_FREQ_GOV_SCHEDUTIL=y

Но такой подход потребует постоянной работы, поскольку вам придется делать это для каждого обновления ядра.

Я не думаю, что есть способ ускорить изменение времени, так как похоже, что Ubuntu работает сценарий изменения, как только будет разумным во время процесса загрузки. Соответствующий сервис называется ondemand.service , который вызывает / lib / systemd / set-cpufreq .

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

1
ответ дан 30 July 2020 в 22:04

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

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