Рассмотрим следующий пример файла .sh, пытающегося запланировать некоторые задания с помощью SLURM.
#!/bin/bash #SBATCH --account=exacct #SBATCH --time=02:00:00 #SBATCH --job-name = "ex_job" #SBATCH --array=1-80 #SBATCH --cpus-per-task=40 #SBATCH --mem-per-cpu=4G #SBATCH --output=%x.%a.out cd /ex_directory srun Rscript ex_script.R
Допустим, задания 1–40 займут 1 час, а задания 41–80 — 2 часа. Можно ли как-то явно заявить об этом SLURM (я думаю, что если я укажу, что некоторые задания будут выполняться быстрее, это поможет с приоритетом). Спасибо!





Согласно документации, сделать это так невозможно (к сожалению). Все задания должны иметь одинаковые начальные параметры (например, размер, ограничение по времени и т. д.), и мы можем изменить только некоторые из этих параметров только после запуска задания.
К сожалению, для достижения вашей цели вам необходимо отправить два сценария работы, один с требованием времени 1 час, а другой с требованием времени 2 часа.
В большинстве систем ваш порядок отправки дает некоторый вес при определении приоритета задания (поскольку привилегии пользователя и требования к ресурсам одинаковы для обоих сценариев задания), следовательно, отправьте первый сценарий задания (продолжительность 1 час) и через несколько секунд отправьте другой.
большое спасибо за указатель на эту документацию и ответ на мой вопрос