В массивах заданий каждая задача является идентичной отправкой вашего сценария, поэтому, как вы видите, способ измерения времени будет обязательно зависеть от конкретной задачи. Чтобы получить общее истекшее время всего массива заданий, вам нужно получить время отправки первого задания и вычесть его из времени окончания последнего задания .
например,
# get submit time for first task in array
sacct -j <job_id>_0 --format=submit
# get end time for last task in array
sacct -j <job_id>_263 --format=end
Затем используйте date -d <timestamp from sacct> +%s
, чтобы преобразовать метки времени в секунды с начала эпохи, чтобы их было легче вычесть.
Также обратите внимание, что каждое из ваших 264 заданийперезапишет step1.log
со своим собственным выводом. Обычно я использую #SBATCH --output=step1-%A_%a.out
, чтобы отличать результаты от разных задач.