Существует ли способ ограничить полное потребление ресурсов ЦП?

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

Кавычка из Википедии: "Легкий Выпуск разработан для более старых компьютеров с ограниченным пространством на жестком диске".

VectorLinux на Википедию

Страница проекта VectorLinux

Править: Distrowatch позволяет Вам искать дистрибутивы, одну из функций называют "Старыми Компьютерами". Сегодня было 18 хитов активных дистрибутивов, соответствующих:

  1. Абсолютный Linux
  2. противопомеховая антенна
  3. ConnochaetOS
  4. GALPon MiniNo
  5. ОС прежней версии
  6. LinuxConsole
  7. Lubuntu
  8. PapugLinux
  9. Щенок Linux
  10. Изворотливый
  11. SliTaz GNU/Linux
  12. Быстрый Linux
  13. Крошечное ядро Linux
  14. TinyMe
  15. Toutou Linux
  16. Единица Linux
  17. VectorLinux
  18. wattOS

23
20.08.2013, 11:48
8 ответов

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

Единственным путем я могу думать о Вас способность использовать, это эффективно пишет, сценарий обертки (не может действительно назвать это сценарием, это является настолько маленьким) для приложений, которые Вы знаете, пожиратели ресурсов. Скажите, например, Вы находите, что Google Chrome использует много ЦП, Вы могли заменить двоичный файл Google Chrome в своем пути с чем-то как:

#! /bin/bash
cpulimit --limit 70 /usr/bin/google-chrome-bin

Я не протестировал это, так возьмите его с мелкой частицей соли. С веб-сайта cpulimit кажется, что Вы смогли устанавливать правила для пределов CPU на различные приложения. Я не уверен, необходимо было бы смотреть.

10
27.01.2020, 19:42

Войдите в BIOS и underclock CPU. - Никакая потребность в уме.

3
27.01.2020, 19:42
  • 1
    Что относительно для BIOS, которые не поддерживают underclocking? –  daboross 26.01.2017, 06:27
  • 2
    cgroups, но tbh, я не видел BIOS, что наклон изменяет настройки частоты когда-либо. Спасибо George –  Sirex 28.01.2017, 02:03
  • 3
    Мой (по общему признанию довольно плохо созданный) ноутбук alienware m14x r1 не имеет такой установки, ничего особенного доступного для изменения в BIOS помимо порядка загрузки и системное время. –  daboross 28.01.2017, 10:26

Можно использовать renice изменить приоритет процесса идентификатором группы или процессом. От примеров для renice:

  1. Скорректируйте хорошее значение так, чтобы идентификаторы 987 и 32 процесса имели бы более низкое хорошее значение:

    renice -n 5 -p 987 32

  2. Скорректируйте хорошее значение так, чтобы идентификаторы 324 и 76 группы имели бы более высокое хорошее значение, если у пользователя есть соответствующие полномочия сделать так:

    renice -n -4 -g 324 76

  3. Скорректируйте хорошее значение так, чтобы числовой идентификатор пользователя 8 и пользовательский SAS имели бы более низкое хорошее значение: renice -n 4 -u 8 sas

-2
27.01.2020, 19:42
  • 1
    Только дополнительное примечание к ответу: renice, хорошие или другие подобные инструменты не произведут в температуре ЦП, проблематичный процесс продолжит есть циклы ЦП. –  Rufo El Magufo 23.08.2011, 05:35
  • 2
    Хороший и renice не ограничит потребление ресурсов ЦП. Они просто устанавливают приоритеты. Если ничто иное не будет работать одновременно, то процесс все еще использует всю вычислительную мощность. –  rahmu 24.08.2011, 12:09

Другая альтернатива, которая не была упомянута, cpufrequtils, который я установил и использовал на своем ноутбуке с Debian 6. Это позволяет Вам изменять алгоритм (регулятор, в cpufrequtils терминология), что использование ядра для масштабирования тактовой частоты вверх и вниз в ответ на загрузку - в частности, userspace регулятор позволяет Вам блокировать частоту в чем-то вроде Вашего выбора (конечно, ЦП должен быть способен к выполнению на этой скорости).

Я использовал его для блокировки Atom на уровне 800 МГц вместо 1.6 ГГц, например. Это очень просто в использовании.

10
27.01.2020, 19:42
  • 1
    Это должно быть принятым ответом. (Или temp_throttle) –  Vajk Hermecz 11.08.2014, 21:47

Другая альтернатива, которая не была упомянута, cpufrequtils, который я установил и использовал на своем ноутбуке с Debian 6. Это позволяет Вам изменять алгоритм (регулятор, в cpufrequtils терминология), что использование ядра для масштабирования тактовой частоты вверх и вниз в ответ на загрузку - в частности, userspace регулятор позволяет Вам блокировать частоту в чем-то вроде Вашего выбора (конечно, ЦП должен быть способен к выполнению на этой скорости).

Я использовал его для блокировки Atom на уровне 800 МГц вместо 1.6 ГГц, например. Это очень просто в использовании.

10
27.01.2020, 19:42

Посетите эту страницу, она объясняет, как установить и использовать cpulimit в Debian и Ubuntu:

http://www.howtoforge.com/how-to-limit-cpu-usage-of-a-process-with-cpulimit-debian-ubuntu

2
27.01.2020, 19:42

Можно ограничить ядра процессора автоматически на основе температуры с помощью сценария temp_throttle. Это может работать в фоновом режиме, в то время как Вы фокусируетесь на более важных вещах. Пример о том, как работать:

sudo ./temp_throttle.sh 80 # Will limit CPU cores when 80C is reached.

*Правовая оговорка - я - автор и специалист по обслуживанию temp_throttle*

6
27.01.2020, 19:42

Нет необходимости менять регулятор, вам просто нужно изменить значение /sys/devices/system/cpu/*/cpufreq/scaling_max_freqдля каждого ядра процессора.

. с этим циклом for:

for f in /sys/devices/system/cpu/*/cpufreq/scaling_max_freq; do
    sudo sh -c "echo $1 > $f" 
done

см. также мой скрипт setcpu .

(исходные команды можно найти здесь)

1
27.01.2020, 19:42

Теги

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