У меня есть программа, и я хочу измерить время ее выполнения на основе входных данных, но моя система устарела и имеет проблемы с перегревом. Если программа работает с полной загрузкой процессора в течение примерно 1 минуты, она обычно переходит в режим гибернации или отключается от перегрева.

Я ищу что-то, чтобы ограничить использование процессора. Я посмотрел на cpulimit, но он работает, останавливая и продолжая программу несколько раз. Как это будет работать в этом случае? Будет ли это оценка запуска программы на более медленном процессоре, или это повредит результаты синхронизации?

Есть ли какое-то другое программное обеспечение, которое более равномерно ограничивает использование процессора?

1 ответ1

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


И, конечно, я подозреваю, что что-то не так с вашим компьютером. Это не должно быть отключено, как это.

  • Ворс блокирует вентилятор и воздушный поток? Вентиляционные отверстия заблокированы?
  • Вентилятор работает на полной скорости или работает вообще?
  • Правильно ли установлен радиатор или поврежден?

Это действительно отключение от перегрева процессора (журналы поддерживают его), или блок питания сдается / перегревается?

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .