Масштабирование частоты процессора Ubuntu 13.04 «зависло» на самой низкой частоте

Я только что установил 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)
10
задан 17 May 2013 в 15:49

3 ответа

У меня была та же проблема с последней версией Mint, установка масштабирования на консервативную, казалось, была ближе всего к тому, как раньше работал ondemand.

Затем я выяснил, в чем проблема, порог up_threshold был слишком высок, он был установлен на 95% нагрузки, теперь это нормально для продолжительных нагрузок, но в большинстве случаев наблюдается небольшой всплеск загрузки процессора хочу, чтобы процессор масштабировался до 100% скорости гораздо быстрее. Я решил эту проблему, установив th up_threshold ниже (75 в моем случае работает нормально). Вы изменяете его, отображая желаемое значение на /sys/devices/system/cpu/cpufreq/ondemand/up_threshold.

0
ответ дан 17 May 2013 в 15:49

Я предложил бы, чтобы Вы использовали, там приложение экономии электроэнергии, подобное Юпитеру?

И используйте индикатор-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
2
ответ дан 17 May 2013 в 15:49

У меня была эта проблема 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
0
ответ дан 17 May 2013 в 15:49

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

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