Есть ubuntu 19.04, под ней крутится сервер с 64 процессорными ядрами. Есть написанная на CPP приблуда, которая следит за некими 20 девайсами, и она по воле программистов запускается в 20 копиях.Каждая из этих 20 копий порождает 64 pid по числу ядер, что увеличивает накладные расходы системы на переключение ядер между всей этой кучей процессов. Вопрос - можно ли как-то со стороны системы, не напрягая разрабов приблуды, ограничить количество ядер на каждую копию, допустим, четырьмя или пятью без жесткой привязки конкретного PID к конкретному ядру? В идеале, где-то указать, что программа xyz не может получить от системы больше n ядер.
докер, подман, кубер и др. иностранные слова
man taskset
duckduckgo cpu affinity
docker:
--cpuset-cpus Limit the specific CPUs or cores a container can use. A comma-separated list or hyphen-separated range of CPUs a container can use, if you have more than one CPU. The first CPU is numbered 0. A valid value might be 0-3 (to use the first, second, third, and fourth CPU) or 1,3 (to use the second and fourth CPU).