Указание ресурсов SLURM при параллельном выполнении нескольких заданий

В соответствии с ответами здесь Что делает задачи --ntasks или -n в SLURM? можно выполнять несколько заданий параллельно через ntasks параметр для sbatch с последующим srun, Чтобы задать дополнительный вопрос - как указать объем памяти, необходимый для параллельного выполнения заданий?

Если, скажем, 3 задания выполняются параллельно, для каждого из которых требуется 8 ГБ памяти, то можно указать 24 ГБ памяти в sbatch(т.е. сумма памяти от всех заданий) или не дать параметры памяти в sbatch но вместо этого укажите 8G памяти для каждого srun?

1 ответ

Решение

Вы должны указать требование к памяти в сценарии, представленном с sbatchв противном случае вы получите распределение памяти по умолчанию, которое может не соответствовать вашим потребностям. Если затем указать 8 ГБ памяти в srun во время разговора вы можете не получить ни одного задания, которое может быть запущено, если объем памяти по умолчанию меньше этого, или иметь только одно или два задания, выполняющихся параллельно, если объем памяти по умолчанию составляет от 16 до 24 ГБ.

Вы можете запросить --mem=24GB, но это предлагает меньше гибкости, чем указание --mem-per-cpu=8G,

Другие вопросы по тегам