Информационные технологии
c 2007 года
 

Как ограничить ресурсы процессора для приложения или процесса?

Как ограничить ресурсы процессора для приложения или процесса?
29.08.2023

Возьмём эту ситуацию на примере - у нас есть сервер 1С, на котором нам срочно нужно заархивировать какую-то папку и положить её на другой сервер.
Мы начинаем архивацию и видим, что процессор загружен на 100%, для 1С там ресурсов уже недостаточно и она начинает дико виснуть, практически останавливаясь.


И тут мы прибегаем к некоторой технологической возможности, которая в общем-то была реализована ещё в древней Windows XP, для этого мы открываем диспетчер задач и переходим на вкладку "Подробнее"

1013.jpg

Здесь есть два варианта:
1) можно просто задать приоритет для процесса
2) можно сделать разграничение нагрузки по логическим ядрам

Первый вариант мы рассматривать не будем, тк там всё понятно, но он слабомасштабируем и контролируем, а так же не даёт в полноте освободить часть процессора, поэтому мы рассмотрим сейчас только 2ой вариант.

Итак, переходим на вкладку "Подробности", находим наш процесс, нажимаем на нём правой кнопкой мыши и в выпадающем контекстном меню выбираем пункт "Задать сходство"
Кстати! Если у вас процессы обновляются и прыгают, то можно временно остановить обновление их отображения, для этого идём в меню "Вид" - "Скорость обновления" и выбираем "Приостановлено".

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

1014.jpg

Здесь нам нужно убрать галочки с тех логических ядре процессора, которые мы хотим освободить для системы или для других задач. Советую выбирать нечётные ядра, т.к. первое логическое ядро процессора самое востребованное у многих приложений и при его 100%загрузке для однопоточных приложений мы можем получить всё равно плохую производительность.
После того, как мы выбрали только определённые логические ядра, мы нажимаем ОК, и идём смотреть, как же это повлияло на загрузку процессора.

1012.jpg

Да, мы отчётливо теперь видим, что указанные нами ядра для архиватора грузятся на 100%, но при этом освобождая те ядра, которые мы исключили.
Задача выполнена, теперь мы можем одновременно выполнять на сервере несколько высоконагруженных задачи не беспокоиться о том, что пользователи 1С (как в нашем примере) начнут испытывать дискомфорт. Все будут довольны.
В том числе и админ.

Всем удачи, и до встречи, не теряемся!

Возврат к списку


Текст сообщения*
Перетащите файлы
Ничего не найдено
Защита от автоматических сообщений
 
X