[Bioclusters] how can I know jobs over ?
Joseph Landman
bioclusters@bioinformatics.org
25 Nov 2002 10:13:02 -0500
On Mon, 2002-11-25 at 10:01, chris dagdigian wrote:
> I don't use PBS myself but had ocasion to install PBSPro for someone
> recently. From reading the manual I remember that PBS supports 'job
> dependencies' just like LSF and SGE does -- a feature that neatly solves
> your problem.
What I have done in this regard has been to write a short code (which I
cannot find now, but it is relatively trivial), to maintain a global
state vector (GSV). This vector has an entry for each job to be
completed. Each time a job completes successfully, it updates the GSV.
Job completion occurs when the GSV indicates all the entries have
completed.
I used this within job queuing systems and outside of them. You can
build something similar with a Makefile, and have it do your run
submission for you.
all: run1 run2 run3
run1: input1
qsub batch1
touch run1
run2: input2
qsub batch2
touch run2
run3: input3
qsub batch3
touch run3
then a
make all
should run the system in the correct order (make maintains its own
GSV). This is independent of the queuing system by the way, and you can
leverage the parallel functionality in the queuing system by using the
-j switch
make -j 20 all
will use the above methodology to submit 20 different jobs into queue.
Or you could use the built in dependency of the queuing system. Each
one is different. I had troubles in the past (a few years ago) with the
PBS system trying to do this.
--
Joseph Landman, Ph.D
Scalable Informatics LLC
email: landman@scalableinformatics.com
web: http://scalableinformatics.com
phone: +1 734 612 4615