On 10/27/11 14:59, Kevin Sallee wrote:
> Hello: i have some jobs that are executed on my farm, and i would like
> another job i'm sending to be executed only when all the other jobs i
> sent are finished. how do i do that without specifying a dependency?
Hi Kevin,
Set the job to a lower priority than the others, and it shouldn't
pick up unless the other jobs can't use any more cpus. (eg. if
your job is @1 and the others are @2 or higher, those other jobs
will always win cpus if they aren't constrained by some limit)
This does mean, however, it may start rendering while the
other jobs are still finishing their renders.
If you really want that last job to start /only/ when the
other jobs have /completely/ finished (and /not/ start even if
there are cpus available but the other jobs are still
working on rendering their last few frames), then 'waitfor <jobid> <jobid..>'
would be the way to go, as that really is a dependency type
of behavior.
To get what you want without a dependency, I think you'd have
to write a custom submit script that submits your job in the
Pause state, and polls the network with 'rush -laj' until
there are no Run jobs, then it would unpause the job to start it.
I can suggest code that would do this, but it's an odd case.
If you think that would be a handy feature, I could investigate
adding such a thing.
--
Greg Ercolano, erco@(email surpressed)
Seriss Corporation
Rush Render Queue, http://seriss.com/rush/
Tel: (Tel# suppressed)ext.23
Fax: (Tel# suppressed)
Cel: (Tel# suppressed)
|