Действительно ли установка является более высоким хорошим уровнем для процесса эффективный способ уменьшить его влияние на системную нагрузку / ПРОЦЕССОРНОЕ ВРЕМЯ?

Можно найти версию 2.3 Стандарта иерархии файловой системы (FHS) по pathname.com/fhs. Существует раздел о usr иерархия. Списки FHS /usr/local как необходимый каталог и записи:

local Локальная иерархия (пустой после основной установки)

Кроме того, записи FHS:

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

Локально установленное программное обеспечение должно быть помещено в /usr/local вместо /usr если это не устанавливается на замене или программном обеспечении обновления в /usr.

Различные дистрибутивы Linux обычно не пишут программное обеспечение в /usr/local. Вместо этого каждый файл помещается в файловую систему согласно FHS.

Если Вы устанавливаете программное обеспечение из источника (./configure && make && make install) без определенных опций это программное обеспечение обычно копирует себя в /usr/local.

Каталог по умолчанию для MacPorts /opt/local. У руководства MacPorts есть описание внутренностей.

11
17.12.2013, 22:09
4 ответа

Это не уменьшит Вашу загрузку.

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

9
27.01.2020, 19:57

Изменение хорошего значения непосредственно не уменьшит системную нагрузку. Это может однако использоваться для отъезда большего количества ресурсов доступным остающимся процессам, которые я подозреваю, то, что Вы действительно хотите.

Из http://linux.101hacks.com/monitoring-performance/hack-100-nice-command-examples/

Kernel решает, сколько процессорного времени требуется для процесса на основе хорошего значения. Возможный хороший диапазон значений:-20 к 20. Процесс, который имеет хорошее значение-20, является очень высоким приоритетом. Процесс, который имеет хорошее значение 20, является очень низким приоритетом.

Таким образом да, Вы хотите выполнить задание крона в более высоком уровне, чем другие процессы, если Вы хотите удостовериться, что другие процессы получают приоритет.

Чтобы сделать это, Вы хотите, чтобы Ваш сценарий крона был выполнен как это:

/bin/nice -n 10 /path/to/cron-script

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

См. также, Как хорошая работа? и http://www.cyberciti.biz/faq/change-the-nice-value-of-a-process/ для получения дополнительной информации.

9
27.01.2020, 19:57

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

Если Вы работаете, зависящий от ЦП процесс (rsync не, но просто например), то он будет всегда хотеть использовать процессорное время каждый раз, когда существуют некоторые доступные. Так как это всегда хочет работать, это внесет значение загрузки 1,0 к значению системной нагрузки. Не имеет значения, каков процесс хороший уровень, потому что средняя длина очереди выполнения незатронута по приказу процессов в очереди выполнения.

5
27.01.2020, 19:57
  • 1
    Это важно для запоминания. При выполнении большого количества процессов niced системная нагрузка будет выглядеть очень высокой, даже если на самом деле никакая реальная работа не станет замедленной. В некоторых случаях загрузка показывает настоящую проблему т.е. который Linux не может позволить niced обработать, используют все ресурсы, которые они могли на самом деле использовать без проблемы (всех их оставляют, не ожидая большую часть времени никакого усиления). –  Nemo 04.01.2017, 23:18

Можно рассмотреть 3 способа уменьшения влияния процесса на загрузку системы/процессорное время:

  • Используйте команду nice для ручного снижения приоритета задачи.
  • Используйте команду cpulimit для многократной паузы процесса, чтобы он не превысил определенный предел.
  • Используйте встроенные в Linux группы управления , механизм, который сообщает планировщику об ограничении объема ресурсов, доступных для процесса.

Resources

http://blog.scoutapp.com/articles/2014/11/04/restricting-process-cpu-usage-using-nice-cpulimit-and-cgroups

2
27.01.2020, 19:57

Теги

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