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

Re: [Condor-users] Multiple job queues



Hi Raman,

I'll expand a little on what Ian said.

The Condor way of doing this sort of thing is to add a ClassAd attribute to the job.  For example, in the submit file, the user could put the following:

+MaxRunHours = 8

If you want to automatically remove jobs that run for longer than the specified max runtime, you can put the following in the Condor configuration on the submit machine:

SYSTEM_PERIODIC_REMOVE = JobStatus == 2 && (CurrentTime - EnteredCurrentStatus > 3600*MaxRunHours)

The above _expression_ assumes that MaxRunHours is always defined.  A slightly more complicated _expression_ could supply a default value of 1 hour if MaxRunHours is undefined by the user:

DEFAULT_MAX_RUN_HOURS = 1

SYSTEM_PERIODIC_REMOVE = JobStatus == 2 && (CurrentTime - EnteredCurrentStatus > 3600*ifThenElse(isUndefined(MaxRunHours),$(DEFAULT_MAX_RUN_HOURS),MaxRunHours))

There are more things you might want to configure based on MaxRunHours (e.g. preemption policy), but the above should implement the basic policy of a strict upper bound on job runtime.

--Dan


On 1/27/12 7:11 AM, Ian Chesal wrote:
On Friday, 27 January, 2012 at 3:33 AM, Raman Sehgal wrote:
Hello all,

I was wondering if it is possible to have multiple job queues on same machine.
So that user can submit job to the queue depending upon requirement.
You can certainly have multiple condor_schedd daemons on a single host. See: http://blog.cyclecomputing.com/2010/06/multiple-condor-schedulers-on-a-single-host.html 

For example
Some user is having long jobs say it runs for 8 hours,
on the other hand some users are having short jobs
that runs for 1 hour only.
   So if possible can i have two job queue namely "one hour" and "10 hour".
So that the user of short job submit it to "one hour" queue and
long job users submit to "10 hour" queue.

If the job execution time exceeds the time allocated to job queue, then the jobs should
either be resubmitted or killed.
This sort of thing is generally unnecessary with Condor. You can set a per-submission rule that can be used to terminate the jobs in the submission if they violate some policy you want to put in place.

If you really wanted to do it per-schedd instance take a look at the SYSTEM_PERIODIC_REMOVE setting: http://research.cs.wisc.edu/condor/manual/v7.6/3_3Configuration.html#18767

You'd set it to remove >1 hour jobs on one the schedd instances to achieve what you're after. So:

SYSTEM_PERIODIC_REMOVE = JobStatus == 2 && (CurrentTime - EnteredCurrentStatus > 60)

Would remove jobs running for longer than one hour.

Regards,
- Ian 


---
Ian Chesal

Cycle Computing, LLC
Leader in Open Compute Solutions for Clouds, Servers, and Desktops
Enterprise Condor Support and Management Tools




_______________________________________________
Condor-users mailing list
To unsubscribe, send a message to condor-users-request@xxxxxxxxxxx with a
subject: Unsubscribe
You can also unsubscribe by visiting
https://lists.cs.wisc.edu/mailman/listinfo/condor-users

The archives can be found at:
https://lists.cs.wisc.edu/archive/condor-users/