Как указать в slurm отправлять электронную почту при завершении одного задания, а не при завершении каждой задачи массива slurm?

#slurm

#slurm

Вопрос:

Я выполнял множество заданий в slurm с sbatch следующим образом:

 #!/usr/bin/env python
#SBATCH --job-name=Python
#SBATCH --array=1-200
#SBATCH --mem=4000
#SBATCH --time=0-18:20
#SBATCH --mail-type=ALL
#SBATCH --mail-user=my_mail@yahoo.com
  

однако, похоже, что происходит то, что slurm отправляет мне электронное письмо для каждого массива. Однако я не хотел, чтобы slurm это делал, я хочу, чтобы я отправлял мне электронное письмо только тогда, когда весь массив slurm завершен (или сбой). т. е. когда выполняется конкретное задание (и ВСЕ его массивы заданий выполнены). Возможно ли это сделать в slurm?

Я читал документацию, и в ней говорится следующее в разделе --mail-type=<type> :

Если не указан параметр ARRAY_TASKS, почтовые уведомления о НАЧАЛЕ, ЗАВЕРШЕНИИ и СБОЕ задания применяются ко всему массиву заданий в целом, а не генерируют отдельные сообщения электронной почты для каждой задачи в массиве заданий.

так может проблема в том, что я использую ALL вместо BEGIN END или FAIL ? Честно говоря, мне просто интересно, когда все массивы заданий будут выполнены, даже если ни один из них не работает нормально.

Комментарии:

1. Какую версию Slurm вы используете? Поведение изменилось в 15.08.0pre3

2. @damienfrancois как мне проверить версию?

3. scontrol version

4. @damienfrancois моя версия slurm, похоже,: slurm 16.05.4

5. Можете ли вы попробовать с BEGIN,END,FAIL вместо ALL REQUEUE , который также включает в себя STAGE_OUT , и,,?

Ответ №1:

Документ:

—mail-type=

… Если не указан параметр ARRAY_TASKS, почтовые уведомления о НАЧАЛЕ, ЗАВЕРШЕНИИ и СБОЕ задания применяются ко всему массиву заданий, а не генерируют отдельные сообщения электронной почты для каждой задачи в массиве заданий. …

https://slurm.schedmd.com/sbatch.html

Надеюсь, это ответ на ваш вопрос.