Ограничение использования процессора равномерно
У меня есть программа, и я хочу измерить время ее работы на основе входных данных, но моя система устарела и имеет проблемы с перегревом. Если программа работает с полной загрузкой процессора в течение примерно 1 минуты, она обычно переходит в спящий режим / отключается от перегрева.
Я ищу что-то, чтобы ограничить использование процессора. Я посмотрел на cpulimit, но он работает, останавливая и продолжая программу несколько раз. Как это будет работать в этом случае? Будет ли это оценка запуска программы в более медленном процессоре, или это повредит результаты синхронизации?
Есть ли какое-то другое программное обеспечение, которое ограничивает использование процессора более равномерно?
1 ответ
Похоже, вы хотите ограничить скорость или частоту вашего процессора. Ядро Linux должно быть в состоянии сделать это, если ваш процессор поддерживает его, вы можете использовать его только до минимума. Например, если ваш процессор обычно работает на частоте 1, 2 или 3 ГГц, вы указываете, что он работает только на частоте 1 или 2 ГГц, и он должен оставаться намного холоднее, чем при частоте 3 ГГц.
Вы можете использовать интерфейс sysfs / procfs напрямую, но используя cpufreq
вероятно, намного проще. В Debian/Ubuntu пакет называется cpufrequtils, вот его поиск в пакете Ubuntu.
Бег cpufreq-info
должен сообщить вам доступные частоты процессора и частоты, а также, если процессор "работает на той же аппаратной частоте" или "необходимо, чтобы его частота координировалась программным обеспечением".
Например, чтобы установить максимальную частоту cpu0 на 1,5 ГГц, вы должны выполнить:cpufreq-set --cpu 0 --max 1.5GHz
Различные регуляторы и параметры определяют, когда нужно ускорить и замедлить процессор, если установить их как "неправильные", процессор может казаться, что он никогда не хочет ускоряться или никогда не хочет замедляться, но в целом я думаю, что консервативный регулятор лучше, чем регулятор по требованию (обычно он используется по умолчанию и, кажется, ускоряется, если в последнее время вы даже забавно смотрите на свой компьютер;-) Например, эта команда говорит консервативному управляющему замедляться, если процессор занят только на 50%:echo 50 | sudo tee /sys/devices/system/cpu/cpufreq/conservative/down_threshold
И, конечно, я подозреваю, что что-то не так с вашим компьютером. Это не должно быть отключено, как это.
- Ворс блокирует вентилятор и воздушный поток? Вентиляционные отверстия заблокированы?
- Вентилятор работает на полной скорости или работает вообще?
- Радиатор правильно установлен или поврежден?
Действительно ли он отключается от перегрева процессора (журналы поддерживают его), или блок питания сдается / перегревается?