У меня есть сервер, который, начиная с обновления до 10.04, теперь запускает демон в режиме масштабирования процессора ondemand. Зачем это автоматически устанавливать? Я не хочу, чтобы мой сервер экономил энергию за счет производительности.
Масштабирование частоты не является статическим. Как только у вас есть работа, процессор прыгает в действие, P-состояния увеличиваются, и все летает.
Это включено, потому что это широко рассматривается как хорошая вещь. Экономит энергию (хорошо для вашего кошелька и окружающей среды). Сохраняет высокую температуру (так важно в серверной комнате). И это довольно незаметно.
Кроме того, на современных чипах Intel, если у вас есть масштабирование, вы можете использовать «turbo boost», где одно ядро будет работать на скорости выше, чем на складе. Это очень полезно для всплесков однопоточной работы. Без масштабирования включено, вы не получите этого.
Вы можете установить инструмент debian rcconf:
sudo apt-get install rcconf
, а затем отключить службу ondemand.
Установите все процессоры в регулятор производительности:
for GOVERNOR in /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor; \
do \
echo "performance" | sudo tee $GOVERNOR; \
done
Все поддерживаемые регуляторы ядра Linux:
performance Запустите CPU на максимальной частоте. powersave Запустите CPU с минимальной частотой. userpace Запустите CPU на указанных пользователем частотах. ondemand Динамически изменяет частоту в соответствии с текущей нагрузкой. Переход на самую высокую частоту, а затем, возможно, отключение при увеличении времени простоя. консервативен. Динамически изменяет частоту в соответствии с текущей нагрузкой. Масштабирует частоту более постепенно, чем по требованию. schedutil Выбор частоты CPU с использованием планировщикаСм. https://www.kernel.org/doc/Documentation/cpu-freq/governors.txt
Чтобы все процессоры работали с максимальной производительностью постоянно на рабочем столе или сервере Ubuntu, запустите:
sudo chmod -x /etc/init.d/ondemand
в командной строке и введите свой пароль. Это отключает скрипт оболочки, который заставляет все процессоры работать со скоростью «OnDemand», делая их по умолчанию полной (Performance). Для этого вам нужно будет перезагрузиться.
Я тестировал это только в Ubuntu Jaunty 9.04, но он должен работать и не создавать никаких проблем для любой версии Ubuntu.
Я думаю, что настройки Ubuntu для этого странные. Рабочий стол или сервер должны работать на полной скорости, на мой взгляд.
С уважением, Джордж
В некоторых системах, например, нарушитель «ondemand», к сожалению, сломан.
Это относится к «Intel (R) Core (TM) 2 Quad CPU Q9300 @ 2,50 ГГц» и ядру 2.6.32 -42.
Ядро полагает, что он может устанавливать частоту по отдельности для каждого процессора, тогда как аппаратное обеспечение фактически позволяет устанавливать частоту на группах из нескольких процессоров (например, CPU 0 и 1 вместе, а CPU 2 и 3 вместе ).
Вы можете обнаружить, что ядро этого не знает об этом, просматривая файлы / sys / devices / system / cpu / cpu * / cpufreq / affected_cpus, которые содержат «0», «1 »,« 2 »,« 3 »вместо« 0 1 »,« 0 1 »,« 2 3 »,« 2 3 ».
Видимый эффект этой пропуски - это однопоточный процесс который запускает полную скорость на одном CPU (регулятор «ondemand» реагирует быстро), а затем примерно через 20 секунд (в зависимости от настроек) теряется часть его скорости.
Причина в ОС , с регулятором «ondemand», периодически повторно использует низкие частоты на холостых CPU, не ожидая, что он также будет неявно ch ange freq нашего занятого CPU. Это даже не заметно, когда вы смотрите на / sys / devices / system / cpu / cpu * / cpufreq / * cur_freq или / proc / cpuinfo, ОС просто не знает об этом!
Итак, на этих системное решение состоит в том, чтобы вернуться к простому регулятору «производительности».
PS: В моем случае работа ЦПУ постоянно по полной частоте ничего не меняла относительно шума вентилятора. Я полагаю, что когда процессор работает на холостом ходу, более низкая или более высокая частота не окажет большого влияния на его использование.
У меня есть новый процессор AMD Athlon II X4 631 (процессор Fusion для сокета FM1), и он не экономит энергию (я смотрел его с помощью счетчика энергии)! У меня нет турбо-сердечника, поэтому мне не нужна настройка ondemand.
При сравнительном тестировании в диапазоне 1-2% при сравнении значений и производительности.
Это старо, но, поскольку никто не упомянул об этом, и для полноты я добавлю, что аргумент о том, что процессор, который работает на максимальной скорости, будет тратить энергию, вырабатывать теплоту, шум вентилятора и т. д. НЕПРАВИЛЬНО. [ ! d0]
Почти все современные процессоры, особенно процессоры для настольных компьютеров и серверов, перейдут в режим глубокого спящего режима в режиме ожидания (гонка google в режиме ожидания).
Масштабирование напряжения, вероятно, сэкономит больше энергии, поэтому на ноутбуках это может немного увеличить время работы, но на рабочем столе и серверах, работающих с регулятором производительности, будет хорошо для большинства «нормальных» пользователей (которые не запускают фермы серверов или аналогичные.)
Я использую производительность gov с моим i7-2600k, а температура процессора обычно составляет около 30 C.