Когда я запускаю Array Job в Sun Grid Engine, как я могу узнать, сколько времени это заняло? - PullRequest
0 голосов
/ 20 апреля 2011

Когда я запускаю Array Job в Sun Grid Engine, как я могу получить информацию позже, сколько времени заняли все работы?Т.е. я хочу знать, сколько времени прошло с момента, когда я отправил даб, до того момента, когда последняя работа закончилась.(Я НЕ хочу знать, сколько процессорного времени потребляются все вместе взятые задания.)

Я отправляю так:

qsub -e GE_errors/ -o GE_out/ SGE_execute

и мой скрипт SGE-execute выглядит так:

#!/bin/sh
#$ -t 1-100
~/bin/intersectBed -c -s -a infile_$SGE_TASK_ID -b template.bed > outfile_$SGE_TASK_ID

Любая помощь приветствуется.Спасибо.

1 Ответ

0 голосов
/ 10 мая 2011

Возможно, просто взглянуть на самые ранние и последние отметки времени в ваших каталогах GE_errors и GE_out.

В качестве альтернативы, если вы установили вспомогательный ключ SGE Система учета ARCo , вы можете увидеть всю эту информацию (и более) в таблицах sge_job и sge_job_usage.

Например, учитывая номер задания, возвращенный вам командой qsub, вы можете получить его уникальный идентификатор и время отправки следующим образом:

select j.j_id, j.j_submission_time from sge_job j where j.j_job_number = ?

и вы можете найти максимальное время выполнения всех его подзадач, например:

select max(u.ju_end_time) from sge_job_usage u where u.ju_parent = <j_id from up above>

, а затем вычесть.

Обратите внимание, что документация на вышеупомянутой "Sun" Wiki не идеальна. (Именно поэтому я пришел сегодня к stackoverflow сегодня. :)

...