[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Condor-users] Question about using Condor in a non-Grid environment




Example:
User 1 submits a job which needs 1 server, 2 linux clients, 1 windows client
User 2 submits a job which needs 2 servers, 2 linux clients, 2 windows clients

Condor can do this with the parallel universe with multiple procs. With a submit file that looks something like:

########################
universe = parallel
executable = the_binary

requirements = (opsys == "WINNT51")
machine_count = 3
queue

requirements = (opsys == "LINUX")
machine_count = 7
queue
#########################

This will create one parallel job with two "procs", the first of which requires 3 windows machines, the other, 7 linux machines. Condor will wait until all 10 machines are available, then launch the job on those machines. (Of course, the jobs will not launch on each machine completely simultaneously, so you may need to be aware of race conditions at startup).

To do this, you'll need to configure your schedd to be a dedicated scheduler, as described in

http://research.cs.wisc.edu/condor/manual/v7.8/3_12Setting_Up.html#SECTION004129000000000000000

An example of running jobs like this is described here:

http://research.cs.wisc.edu/condor/manual/v7.8/2_9Parallel_Applications.html#SECTION00393000000000000000

It is best if the requirements for machines in each proc in the same job are mutually exclusive, as Condor won't try to match every permutation of every possible machine to every possible part of a parallel job.

Let us know how this works for you,

-Greg