[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [HTCondor-users] Concurrency Limits with Flocking
- Date: Wed, 3 Apr 2013 14:28:10 +0000
- From: "Cotton, Benjamin J" <bcotton@xxxxxxxxxx>
- Subject: Re: [HTCondor-users] Concurrency Limits with Flocking
So I was thinking about this last night as I was falling asleep. Don't judge me. Anyway, I came up with two possible ideas. Neither of them are particularly good, but they might provide some kind of inspiration for better ideas.
The first is to stand up a dedicated schedd for jobs that use this software. You can set MAX_JOBS_RUNNING to the number of licenses you have. This isn't a very robust enforcement method, since there's no good way to prevent people from submitting those jobs on another schedd (and if people submit non-that-software jobs, they'll prevent the intended jobs from running). Since the license already depends on user goodwill, maybe this is good enough.
The second is to write a license manager of sorts. Jobs using this software would have some job ad set. A web server polls the schedds to see how many running jobs have that ad and compares it to the number of licenses. The job would have some wrapper or pre job hook to check this web server and then start the job only if there are licenses available. Or you could use a startd cron and some fancy START expression. This is better at enforcement, but still requires users to behave appropriately.