CPULimit, обмежує використання процесором процесора

про CPULimit

У наступній статті ми збираємось поглянути на CPULimit. Це інструмент командного рядка, який обмежує використання процесора процесом (виражене у відсотках, а не в часі процесора). Це буде корисно для контролю пакетних завдань, коли ми не хочемо, щоб процес споживав занадто багато циклів процесора.

За допомогою цього інструменту ми не збираємося змінювати значення або інші пріоритетні налаштування, а фактичне використання центрального процесора. Крім того, він здатний динамічно та швидко пристосовуватися до загального навантаження системи. Контроль кількості використовуваного процесора здійснюється шляхом надсилання сигнали НАСТУПНА ЗУПИНКА y НАДАЛЬШЕ POSIX до процесів. Усі дочірні процеси та потоки зазначеного процесу матимуть однаковий відсоток процесора.

Встановіть CPULimit

CPULimit є доступні у більшості сховищ за замовчуванням Unix-подібних дистрибутивів. Ми можемо встановити його за допомогою менеджерів пакетів за замовчуванням у відповідному дистрибутиві Gnu / Linux. У наведеному прикладі ми побачимо, як встановити його на Debian, Ubuntu та Linux Mint. Нам залишиться лише відкрити термінал (Ctrl + Alt + T) і написати в ньому таку команду:

sudo apt-get install cpulimit

Хто хоче, може проконсультуватися з іншими типами об'єктів в сторінка проекту GitHub.

Використання CPULimit

Після встановлення інструменту настав час подивитися, як він працює. Для цього ми збираємося запустити програму, яка споживає багато ресурсів ЦП. Наступні команди повинні виконуватися як кореневий користувач.

Створення сценарію, який споживає ресурси ЦП

Спочатку ми збираємось створити файл із назвою derrochecpu.sh. Я збираюся використовувати Редактор Vim, але щоб кожен використовував ту, яку віддає перевагу. З терміналу (Ctrl + Alt + T) нам доведеться написати:

vim derrochecpu.sh

Після відкриття ми натиснемо клавішу 'Esc' і потім 'i'. Тепер ми додамо наступні рядки:

vim скрипт splurgecpu

#!/bin/bash
while :; do :; done;

Після цього пора економити та виходити. Для цього ми натиснемо клавішу 'Esc'і ми напишемо : WQ щоб зберегти та закрити файл. Цей короткий сценарій буде повторювати плавно, споживаючи максимальне використання процесора. Тому рекомендується протестувати його на віртуальній машині.

Зараз ми зробимо цей файл виконуваним. Для цього з того ж терміналу (Ctrl + Alt + T) ми виконаємо:

chmod +x derrochecpu.sh

Запуск сценарію

Тепер ми запустимо процес у фоновому режимі. Ми зробимо це за допомогою команди:

./derrochecpu.sh &

PID-скрипт splurgeCPU

Ми збираємося зберегти PID процесу. У цьому випадку 6472 є ПІД запущеного процесу.

Перевірка, скільки процесора він споживає

Ми можемо бачити кількість процесора, яку споживає процес, який ми щойно запустили, використовуючи команда «top» в тому самому терміналі:

верхній скрипт splurgeCPU

top

Як видно на скріншоті вище, процес wastecpu.sh споживає більше 96% використання процесора. Оскільки він споживає багато процесора, важко виконувати інші завдання. Через кілька хвилин, система може вийти з ладу або завмерти. Тут нам допомагає CPULimt.

Обмеження використання процесора PID

Тепер давайте обмежимо використання ЦП цим процесом за допомогою інструмента CPULimit. Ми збираємося обмежте використання ЦП до 35% за допомогою відповідного ПІД (приблизно). Для цього виконайте:

cpulimit -l 35 -p 6472 &
  • Варіант "-л 35»Обмежує процес приблизно 35%.
  • «-p 6472»Це ПІД derrochecpu.sh, який ми бачили раніше.

Перевірка ефекту CPULimit

Як тільки попередня команда буде запущена, давайте ще раз перевіримо використання процесора. Для цього ми знову використаємо команду top:

верхній скрипт CPULimit марнотратство

top

Як ви можете бачити на зображенні вище, використання процесора wastefulcpu.sh впало до 35,6%, що дуже близько до 35%. Зараз я ми можемо мати більше ресурсів ЦП для запуску інших процесів.

Обмеження використання центрального процесора за назвою файлу

Ми бачили, як обмежити процес за допомогою PID. Так само ми можемо виконати команду CPULimit із зазначенням імені виконуваного програмного файлу.

Наприклад, той самий приклад вище:

cpulimit -l 30 ./derrochecpu.sh &

CPULimit може бути корисним під час запуску процесу, який забирає занадто багато процесора. Наступного разу, коли ми помітимо, що програма споживає занадто багато процесора, нам просто доведеться знайти PID процесу за допомогою команди «топ«. Коли він у вас є, вам просто потрібно обмежити використання процесора до мінімального значення за допомогою команди CPULimit, як описано в цій статті.

Видаліть CPULimit

Видалити цей інструмент з нашої системи так само просто, як відкрити термінал (Ctrl + Alt + T) і ввести в нього:

sudo apt remove cpulimit

Що описано в цій статті це лише приклад. Очевидно, що ніхто в здоровому розумі не запустить на своєму комп’ютері такий сценарій, як описаний тут.


Залиште свій коментар

Ваша електронна адреса не буде опублікований. Обов'язкові для заповнення поля позначені *

*

*

  1. Відповідальний за дані: Мігель Анхель Гатон
  2. Призначення даних: Контроль спаму, управління коментарями.
  3. Легітимація: Ваша згода
  4. Передача даних: Дані не передаватимуться третім особам, за винятком юридичних зобов’язань.
  5. Зберігання даних: База даних, розміщена в мережі Occentus Networks (ЄС)
  6. Права: Ви можете будь-коли обмежити, відновити та видалити свою інформацію.

  1.   явп - сказав він

    Привіт
    Він ідеально підходить для старого ПК, який я маю з процесором amd64 x2, який, схоже, має проблеми з охолодженням, і коли процес споживає багато процесора протягом декількох хвилин, він нагрівається до 100 ° C і вимикається.
    Таким чином, коли я бачу, що процес (як правило, деякі веб-сайти чи програми для відтворення відео) змушує мене підвищувати температуру процесора, я буду використовувати cpulimit для видалення "потужності" з цього процесу.
    Грекіас