Разделить «толстые» узлы на несколько узлов Slurm - PullRequest
1 голос
/ 20 апреля 2020

Согласно SLURM FAQ :

Может ли Slurm эмулировать кластер большего размера? Да, это может быть полезно для тестирования. Он также использовался для разделения «толстых» узлов на несколько узлов Slurm. Есть два способа сделать это. Лучший метод для большинства условий - запустить один демон slurmd на эмулируемый узел в кластере следующим образом.

Предположим, у нас есть один узел с 10 графическими процессорами и 40 ядрами процессора. Можно ли это использовать для виртуального разделения узла на 10 узлов с 4 ядрами по 1 GPU каждый с явной привязкой CPU / GPU? Если да, то как должна выглядеть конфигурация?

1 Ответ

0 голосов
/ 25 апреля 2020

Вы можете создать 10 виртуальных машин с нужными вам спецификациями (4 ядра и 1 графический процессор), подключенных к одной сети. Затем запустите на каждой виртуальной машине демона slumrd (и один из них с slurmctld).

Примерно так: enter image description here

Вы должны привязать ядра к ВМ, чтобы иметь более точное поведение. Но если это для целей тестирования, может быть, это не имеет большого значения.

Я думаю, что этот подход довольно прост для того, что вы хотите. Кроме того, этот подход позволяет настроить Slurm как обычно.

Конфигурация будет выглядеть так:

NodeName=compute-[0-9] CPUs=4 Gres=gpu:1
PartitionName=main Nodes=ALL Default=YES MaxTime=INFINITE State=UP

Надеюсь, это поможет!

...