Могу ли я использовать ulimit для предотвращения перегрева и перезагрузки системы?

Похоже, вы хотите:

fmatlab () { 
    $MYMATLABPATH/matlab -r "edit $*" &
}

Когда $*используется внутри двойных кавычек, он объединяет все параметры с помощью пробела (по умолчанию ).

1
16.10.2019, 00:23
1 ответ

Бесполезно, нет. ulimitв основном ограничивает объем памяти различных типов, которую процесс может использовать (память для прямого использования, а также записи в системных таблицах, таких как таблицы дескрипторов файлов и процессов ). ulimitможно использовать для уничтожения процессов, которые потребляют в общей сложности больше определенного количества процессорного времени, но на самом деле это не связано с температурой процессора. Процесс, который загружает ЦП на несколько минут, может привести к перегреву вашей системы, тогда как использование нескольких минут в течение дня не будет проблемой.

ulimitтакже может установить ограничение на приоритет планирования процесса, но это тоже бесполезно, потому что это предотвращает использование процессорного времени процессом только в том случае, если вместо этого ЦП используют другие процессы. По той же причине niceне будет охлаждать ваш процессор.

Причина, по которой ваш ЦП будет работать медленнее, — это ограничение его максимальной частоты. В Linux вы можете сделать это с помощью чего-то вроде

echo 2097152 | tee /sys/devices/system/cpu/cpufreq/policy*/scaling_max_freq

Это ограничивает частоту ЦП на уровне 2 ГГц(scaling_max_freqв кГц ). Каждый каталог policy*соответствует одному ядру.

Процессоры должны быть защищены от перегрева и замедления, а не от сбоя (не говоря уже о возгорании, от которого процессоры очень хорошо защищены на практике ), но на практике иногда происходит сбой.

2
27.01.2020, 23:30

Теги

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