Как выделить ЦП для процесса

вы можете использоватьawk -F '"' '{print $2}'

0
17.07.2019, 09:31
2 ответа

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

taskset

как вы уже выяснили. Чтобы исключить ЦП, добавьте параметр загрузки

isolcpus=N

Число (N )основано на 0 -.

6
28.01.2020, 02:39

В системах с systemd вы также можете настроить это в конфигурации systemd. Предполагая, что ваша система имеет 4 ядра, вы можете добавить

[Manager]
CPUAffinity=0-2

- /etc/systemd/system.conf, чтобы гарантировать, что systemd (PID 1 )будет работать на первых трех процессорах.По умолчанию процессы, запущенные прямо или косвенно с помощью systemd (, что верно для всех процессов ), наследуют этот параметр, поэтому 4-й ЦП (номер 3 )не будет использоваться. Просто добавьте

[Service]
CPUAffinity=3

в юнит-файл службы, которую вы хотите запустить на 4-м ядре. Преимущество этого подхода заключается в том, что вы можете настроить другие параметры, связанные с реальным -временем, такие как LimitMEMLOCKили LimitRTPRIO, в одном и том же месте -без необходимости возиться с кучей различных инструментов.

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

.
systemctl daemon-reload
systemctl restart my-service.service
2
05.12.2020, 18:20

Теги

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