Ограничение нагрузки процессора CPULimit для Linux.

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

Как она работает

Обратите внимание, что вам не нужно читать данный пункт, чтобы использовать CPULimit, вы можете пропустить это, если вы не заинтересованы в настройках CPULimit. Если заинтересованы и вам интересно знать секреты CPULimit,то читаем дальше. Конечно это для Вас не секрет, если вы являетесь разработчиком C, но я постараюсь объяснить всё. Работа CPULimit делается вся в пользовательском пространстве, так что не мешает Linux планировщику. В принципе, цель процесса, который вы можете задать по линии PID, имя или команду, в непрерывной паузе и возобновить, отправив его SIGSTOP и SIGCONT сигналы. Сигналы посылаются CPULimit в соответствующие моменты, на основе предела, указанного пользователем, и процессе статистики чтения Тр. 
Системные требования

CPULimit должен работать на любой OS Linux 2.2 или выше. Было несколько сообщений, что CPULimit прекрасно работает даже на оборудовании SMP, но я считаю, что если у вас есть более одного процессора,то есть небольшая разница в смысле использования процессора (см. ниже). 
Если вы можете изменить исходный код CPULimit, чтобы запустить его в другой операционной системе, пожалуйста, сообщите мне, чтобы я мог опубликовать код. Но только не портативный код для перебора списка процессов и получения статистики работы процесса.

Инструкции

Загрузите последнюю стабильную версию  или получите последнюю версию исходного кода из репозитория с помощью следующей команды:

svn checkout https://cpulimit.svn.sourceforge.net/svnroot/cpulimit/trunk cpulimit

Затем извлеките источник и компилируйте с make:

tar zxf cpulimit-xxx.tar.gz cd cpulimit-xxx make

Имя исполняемого файла CPULimit. Вы можете скопировать его в /usr/bin.

Для запуска CPULimit, нажмите клавишу F2, держа нажатой клавишу ALT ( ALT + F2 ) в Ubuntu, чтобы открыть приложение Runокно. Введите следующую команду в строке:

cpulimit –e pemu –l 40

Это позволит ограничить применение pemu до 40% загрузки процессора.

Примеры использования

Предельные «bigloop»  — Процесс имя исполняемого файла до 40% CPU:

cpulimit —exe bigloop —limit 40

cpulimit —exe /usr/local/bin/bigloop —limit 40

Предельный процесс PID до 55% CPU:

cpulimit —pid 2960 —limit 55

Запуск процесса командной строки и ограничение до 40% (в разработке )

cpulimit —limit 40 /etc/rc.d/rc.boinc start

Примечания

Если ваш компьютер имеет один процессор, вы можете ограничить проценты от 0% до 100%, что означает, что если вы установите, например 50%, ваш процесс не сможет использовать более 500 мс процессорного времени для каждого второго процесса. Но если ваша машина имеет четыре процессора, процент может варьироваться от 0% до 400%, так что установка предела на 200% означает, использовать не более чем на половину мощности. В любом случае, процент такой же, что вы видите, когда вы запускаете top .

CPULimit должна работать по крайней мере, с тем же пользователем, запускающим управление процессом. И это намного лучше, если вы запустите CPULimit как корень, чтобы иметь более высокий приоритет, и более точное управление.  Теперь CPULimit может ограничивать также даже второстепенные указанные процессы. Код всё ещё ​​является экспериментальный, поэтому дайте мне знать, как он работает.Пожалуйста, присылайте Ваши отзывы, сообщения об ошибках, пожелания или просто,что бы сказать спасибо .

 

3 комментариев к записи “Ограничение нагрузки процессора CPULimit для Linux.”

  • :

    […] Для Linux , используйте CPULimit. В Ubuntu вы можете использовать менеджер пакетов Synaptic или Ubuntu Software Центр загрузки и установки CPULimit.Вы можете узнать больше о CPULimit на следующем веб-сайте: Ограничение нагрузки процессора CPULimit для Linux […]

  • Desmond Stack:

    I need an excellent place to host my blog, do you know of the?

Оставить комментарий