Задание массива qsub - получить количество задач

Можно ли получить количество задач для отправленного задания массива? Как $SGE_TASK_ID для номера задачи.

Например, если я отправлю задание

qsub -t 1-4 my_script.sh

Я хотел бы получить 4.


person Mouagip    schedule 29.05.2014    source источник
comment
Вам нужно общее количество или идентификатор для текущей работы?   -  person dbeer    schedule 30.05.2014
comment
Общее количество задач. Например. 4 если я позвоню -t 1-4.   -  person Mouagip    schedule 01.06.2014


Ответы (2)


Я не знаю какой-либо автоматической переменной для этого, но я могу придумать способ сделать это с помощью TORQUE (держу пари, что те же аргументы работают для SGE или имеют соответствующие аргументы). К сожалению, вам придется сделать это вручную:

qsub -t 1-4 my_script.sh -v TOTAL_TASKS=4

Затем в сценарии задания вы установите переменную среды $TOTAL_TASKS по желанию. Это не даст вам ее автоматически, но даст вам необходимую информацию.

person dbeer    schedule 02.06.2014

Я могу получить эту информацию от qstat -j <job_id>.

Например, отправьте несколько заданий массива:

echo "sleep 60" | qsub -t 1-200

Используйте qstat для извлечения общего количества задач:

qstat -j <job_id> | grep tasks

grep возвращает следующее:

job-array tasks:            1-200:1
person Vince    schedule 05.08.2014