У меня есть старый ноутбук, который я использую в качестве медиацентра на своем телевизоре, и я обычно устанавливаю / переустанавливаю / удаляю разные ОС и приложения, чтобы он работал как можно более плавно.
Одна вещь, которую я заметил, была очень странной. Мой ноутбук - HP Pavilion G62 с трехъядерным процессором AMD, работающим на частоте 1800 МГц. Когда я запускаю XBMC из Windows 7 и смотрю на скорости процессора, он ясно говорит о 1800 МГц. Тем не менее, когда я запускаю его из Ubuntu либо из модуля запуска, либо из сеанса, он говорит, что процессор работает только на 800 МГц.
Я хотел исследовать дальше, поэтому я загрузил DXDIAG в Windows, чтобы увидеть скорость. Конечно же, это указывает на то, что это 1800 МГц. Однако при запуске HardInfo в Ubuntu он говорит мне, что скорость каждого ядра следующая: 1500 МГц, 1500 МГц и 800 МГц.
Означает ли это, что заявленная частота процессора и скорость, обнаруженная Windows, лежат или округлены? Или проблема в том, что Ubuntu определяет скорость моего процессора, и моя система работает не так оптимально, как должна? Я был бы склонен сказать последнее ... главным образом потому, что кажется, что Windows работает намного более гладко, чем Ubuntu.
источник
cpufreq-info
. Возможно, вам придется установить егоsudo apt-get install cpufrequtils
сначала.Ответы:
По умолчанию Ubuntu использует регулятор частоты по умолчанию . Чтобы проверить / переключить регуляторы, установите
cpufrequtils
пакет следующим образом:Чтобы проверить текущую скорость / регуляторы каждого ядра, выполните:
Вы можете установить все ядра на производительность , как это:
Вы можете подтвердить, что все ядра теперь работают на максимальной частоте, вот так:
Примечание : это изменение временно. Как только вы перезагрузите компьютер, он снова будет доступен по требованию .
источник
Теоретическое обоснование: в типичном компьютере процессор простаивает большую часть времени. Для экономии энергии современные процессоры реализуют масштабирование частоты - то есть операционная система может указать процессору переключаться на более низкую частоту при низкой нагрузке. Технология называется SpeedStep в процессорах Intel и Cool'n'Quiet в процессорах AMD.
В ядре Linux масштабирование частоты осуществляется
cpufreq
инфраструктурой, которая использует концепцию «регуляторов» для управления частотой.Регулятор по умолчанию - «ondemand», который увеличивает частоту, когда загрузка процессора поднимается выше 95%. Это позволяет процессору экономить электроэнергию во время простоя и переключаться на полную производительность, когда есть чем заняться. Существует некоторая задержка перехода, измеряемая в миллисекундах, поэтому, когда незанятый процессор внезапно получает большую нагрузку, он продолжает пускаться на низкой частоте в течение нескольких миллисекунд перед переключением на полную мощность, поэтому в определенных ситуациях это может привести к несколько меньшей производительности, чем когда всегда работает на полной скорости.
Существуют и другие регуляторы , в том числе регулятор «производительности», который всегда запускает процессор на полной частоте. Это устраняет задержку переключения, но может увеличить потребление энергии.
Вы можете экспериментировать с разными губернаторами, как это предлагается в другом ответе, но я сомневаюсь, что это даст впечатляющие результаты. Они не сделали бы это по умолчанию, если бы это не имело смысла в 99% случаев :)
Вернемся к вашему вопросу: скорее всего, Windows показывает вам максимально возможную частоту ЦП (ту, которую они рекламируют на коробке ЦП), в то время как Ubuntu показывает вам фактическую частоту, с которой работает каждое из ядер ЦП в данный конкретный момент. Это не значит, что процессор работает медленнее в Ubuntu. Если кажется, что Ubuntu работает медленно на вашем ноутбуке, это, скорее всего, вызвано чем-то другим - например, низким объемом оперативной памяти, медленным жестким диском и т. Д. Современный Ubuntu, безусловно, требует больше ресурсов, чем, скажем, Windows XP, которую вы, вероятно, найдете на старый ноутбук.
Более техническое чтение:
источник