Я только что установил Ubuntu 13.04 на свой MacBook Air, после того, как какое-то время играл, машина работала очень медленно, поэтому я проверил частоту процессора. cpufreq-info сообщает о частоте 800 МГц на всех 4 ядрах (что является самым низким значением). Губернатор настроен по требованию. Теперь, когда я загружаю систему (запускаю небольшой скрипт, который хеширует данные четыре раза), машина останавливается, но cpufreq-info по-прежнему сообщает 800 МГц. Я могу вручную установить частоту 2 ГГц, что решает проблему с производительностью, но обойдется мне в батарею.
Это вывод cpufreq-info:
cpufrequtils 008: cpufreq-info (C) Dominik Brodowski 2004-2009
Report errors and bugs to cpufreq@vger.kernel.org, please.
analyzing CPU 0:
driver: acpi-cpufreq
CPUs which run at the same hardware frequency: 0 1 2 3
CPUs which need to have their frequency coordinated by software: 0
maximum transition latency: 10.0 us.
hardware limits: 800 MHz - 2.00 GHz
available frequency steps: 2.00 GHz, 2.00 GHz, 1.90 GHz, 1.80 GHz, 1.70 GHz, 1.60 GHz, 1.50 GHz, 1.40 GHz, 1.30 GHz, 1.20 GHz, 1.10 GHz, 1000 MHz, 900 MHz, 800 MHz
available cpufreq governors: conservative, ondemand, userspace, powersave, performance
current policy: frequency should be within 800 MHz and 2.00 GHz.
The governor "ondemand" may decide which speed to use
within this range.
current CPU frequency is 800 MHz (asserted by call to hardware).
cpufreq stats: 2.00 GHz:5,75%, 2.00 GHz:0,47%, 1.90 GHz:0,00%, 1.80 GHz:0,01%, 1.70 GHz:0,01%, 1.60 GHz:0,01%, 1.50 GHz:0,01%, 1.40 GHz:0,01%, 1.30 GHz:0,01%, 1.20 GHz:0,02%, 1.10 GHz:0,01%, 1000 MHz:0,02%, 900 MHz:0,02%, 800 MHz:93,67% (1388)
analyzing CPU 1:
driver: acpi-cpufreq
CPUs which run at the same hardware frequency: 0 1 2 3
CPUs which need to have their frequency coordinated by software: 1
maximum transition latency: 10.0 us.
hardware limits: 800 MHz - 2.00 GHz
available frequency steps: 2.00 GHz, 2.00 GHz, 1.90 GHz, 1.80 GHz, 1.70 GHz, 1.60 GHz, 1.50 GHz, 1.40 GHz, 1.30 GHz, 1.20 GHz, 1.10 GHz, 1000 MHz, 900 MHz, 800 MHz
available cpufreq governors: conservative, ondemand, userspace, powersave, performance
current policy: frequency should be within 800 MHz and 2.00 GHz.
The governor "ondemand" may decide which speed to use
within this range.
current CPU frequency is 800 MHz (asserted by call to hardware).
cpufreq stats: 2.00 GHz:3,17%, 2.00 GHz:0,01%, 1.90 GHz:0,01%, 1.80 GHz:0,00%, 1.70 GHz:0,00%, 1.60 GHz:0,01%, 1.50 GHz:0,01%, 1.40 GHz:0,01%, 1.30 GHz:0,01%, 1.20 GHz:0,01%, 1.10 GHz:0,01%, 1000 MHz:0,02%, 900 MHz:0,02%, 800 MHz:96,71% (1433)
analyzing CPU 2:
driver: acpi-cpufreq
CPUs which run at the same hardware frequency: 0 1 2 3
CPUs which need to have their frequency coordinated by software: 2
maximum transition latency: 10.0 us.
hardware limits: 800 MHz - 2.00 GHz
available frequency steps: 2.00 GHz, 2.00 GHz, 1.90 GHz, 1.80 GHz, 1.70 GHz, 1.60 GHz, 1.50 GHz, 1.40 GHz, 1.30 GHz, 1.20 GHz, 1.10 GHz, 1000 MHz, 900 MHz, 800 MHz
available cpufreq governors: conservative, ondemand, userspace, powersave, performance
current policy: frequency should be within 800 MHz and 2.00 GHz.
The governor "ondemand" may decide which speed to use
within this range.
current CPU frequency is 800 MHz (asserted by call to hardware).
cpufreq stats: 2.00 GHz:2,69%, 2.00 GHz:0,00%, 1.90 GHz:0,01%, 1.80 GHz:0,01%, 1.70 GHz:0,01%, 1.60 GHz:0,02%, 1.50 GHz:0,01%, 1.40 GHz:0,01%, 1.30 GHz:0,02%, 1.20 GHz:0,02%, 1.10 GHz:0,01%, 1000 MHz:0,02%, 900 MHz:0,02%, 800 MHz:97,16% (1194)
analyzing CPU 3:
driver: acpi-cpufreq
CPUs which run at the same hardware frequency: 0 1 2 3
CPUs which need to have their frequency coordinated by software: 3
maximum transition latency: 10.0 us.
hardware limits: 800 MHz - 2.00 GHz
available frequency steps: 2.00 GHz, 2.00 GHz, 1.90 GHz, 1.80 GHz, 1.70 GHz, 1.60 GHz, 1.50 GHz, 1.40 GHz, 1.30 GHz, 1.20 GHz, 1.10 GHz, 1000 MHz, 900 MHz, 800 MHz
available cpufreq governors: conservative, ondemand, userspace, powersave, performance
current policy: frequency should be within 800 MHz and 2.00 GHz.
The governor "ondemand" may decide which speed to use
within this range.
current CPU frequency is 800 MHz (asserted by call to hardware).
cpufreq stats: 2.00 GHz:3,07%, 2.00 GHz:0,02%, 1.90 GHz:0,01%, 1.80 GHz:0,00%, 1.70 GHz:0,01%, 1.60 GHz:0,01%, 1.50 GHz:0,01%, 1.40 GHz:0,01%, 1.30 GHz:0,01%, 1.20 GHz:0,01%, 1.10 GHz:0,03%, 1000 MHz:0,03%, 900 MHz:0,01%, 800 MHz:96,77% (1004)
У меня была та же проблема с последней версией Mint, установка масштабирования на консервативную, казалось, была ближе всего к тому, как раньше работал ondemand.
Затем я выяснил, в чем проблема, порог up_threshold был слишком высок, он был установлен на 95% нагрузки, теперь это нормально для продолжительных нагрузок, но в большинстве случаев наблюдается небольшой всплеск загрузки процессора хочу, чтобы процессор масштабировался до 100% скорости гораздо быстрее. Я решил эту проблему, установив th up_threshold ниже (75 в моем случае работает нормально). Вы изменяете его, отображая желаемое значение на /sys/devices/system/cpu/cpufreq/ondemand/up_threshold
.
Я предложил бы, чтобы Вы использовали, там приложение экономии электроэнергии, подобное Юпитеру?
И используйте индикатор-cpufreq, так, чтобы Вы знали, в какой частоте Вы. проверьте ссылку, которую я вставил, как установить/настроить индикатор-cpufreq
Существует ли приложение экономии электроэнергии, подобное Юпитеру? Раздел 3.) Процессор и Частотное масштабирование
ondemand Dynamically switch between CPU(s) available if at 95% cpu load
Сохраните CPU в низком, только превысьте если в 95%-й загрузке ЦП
performance Run the cpu at max frequency
conservative Dynamically switch between CPU(s) available if at 75% load
Сохраните CPU в низком, только превысьте если в 75%-й загрузке ЦП
powersave Run the cpu at the minimum frequency
У меня была эта проблема 14.04 - 16.04 (на сегодняшний день). Чтобы решить эту проблему, я должен был заставить Ubuntu игнорировать ограничение BIOS. У меня сработало следующее:
Открыть grub:
sudo vim /etc/default/grub
Заменить строку GRUB_CMDLINE_LINUX_DEFAULT:
- GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
+ GRUB_CMDLINE_LINUX_DEFAULT="quiet splash intel_pstate=disable processor.ignore_ppc=1"
Обновить grub:
sudo update-grub
Перезагрузить затем:
echo 1 | sudo dd of=/sys/module/processor/parameters/ignore_ppc
echo 2900000 | sudo dd of=/sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq
echo 2900000 | sudo dd of=/sys/devices/system/cpu/cpu1/cpufreq/scaling_max_freq
echo 2900000 | sudo dd of=/sys/devices/system/cpu/cpu2/cpufreq/scaling_max_freq
echo 2900000 | sudo dd of=/sys/devices/system/cpu/cpu3/cpufreq/scaling_max_freq
работал для меня. Проверьте количество ядер процессора и обновите все соответственно. Возможно, вы захотите поместить эти дополнительные строки в /etc/rc.local, чтобы они выполнялись при каждой загрузке.
Редактировать ниндзя: Заменить 2900000 выше на значение в:
cat /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_max_freq