Скажите 'хорошо', чтобы остановить +19 процессов, если загрузка> = 1

394
barrycarter

Я заметил, что мой компьютер работает медленно, когда нагрузка увеличивается после 1 (т. Е. Первое число после «load средняя:» из команды «uptime»).

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

Могу ли я сказать nice (или другой программе) полностью остановить (kill -STOP) любые процессы +19, когда нагрузка увеличивается более чем на 1 (и возобновить, когда нагрузка уменьшается до 0,75 или что-то еще)?

3
средняя нагрузка не имеет особого значения ... это просто количество процессов, активно работающих в определенные промежутки времени. Загрузка 1.0 не означает, что система полностью занята, просто есть хотя бы один процесс, работающий постоянно. Это может быть 20 процессов, каждый из которых выполняется в течение 5% времени. 13 лет назад 0
О, я знаю. Я видел, как средняя нагрузка однажды достигла 120 (система не отвечала). Кто-то однажды сказал мне, что это число указывает на процент использования ЦП (возможно 120%, потому что Unix выдумывает это так же, как и «df»), но теперь я думаю, что это не так. Я только что лично заметил, что моя система замедляется, например, когда средняя нагрузка достигает 1,50. barrycarter 13 лет назад 0

1 ответ на вопрос

1
Mikhail Kupchik

Во FreeBSD есть класс процесса IDLE - см. Справочную страницу rtprio (1), так что вы можете назначить приоритет IDLE для rsync, чтобы он не получал временные интервалы, когда нормальные процессы активны.

http://www.freebsd.org/cgi/man.cgi?query=rtprio&apropos=0&sektion=0&manpath=FreeBSD+8.2-RELEASE&arch=default&format=html

У Linux есть ionice (1) для планировщика CFQ io: http://linux.die.net/man/1/ionice Очень похожая концепция, но для ввода / вывода.

Ионис именно то, что мне было нужно, спасибо! barrycarter 13 лет назад 0

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