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

Re: [Condor-users] Preemption question



On Fri, 30 Jun 2006, Miskell, Craig wrote:

<snip>
I, too, thought I had disabled pre-emption with:
PREEMPT                 = FALSE

Lo and behold, some jobs got pre-empted last night (the first time my
pool has had any real contention for resources).  From my reading of the
previous thread, this can potentially happen when PREEMPT is false, but
only if the machine has a RANK expression which results in it preferring
a different job to the one currently running.  If that understanding is
correct, then something weird is going on, as all my startds have a Rank
of 0 (I've done nothing special).

To *completely* disable preemption you also need to set:

PREEMPTION_REQUIREMENTS = FALSE

on the *CENTRAL MANAGER* (strictly speaking, on the machine running the condor_negotioator daemon). If you don't do this, you can still get "preemption by users with better priority in the pool".


Interestingly, in this case the preferred/pre-empting job had a Rank =
Mips, whereas the pre-empted/evicted job had a Rank of 0.  This may be a
red-herring, but does seem suspiciously related.  Should the job Rank
have any effect on preemption (I would have thought it wouldn't even be
considered until the Negotiator had decided that a given Startd was a
candidate for satisfying the claim).

If you didn't have PREEMPTION_REQUIREMENTS set to FALSE on your central manager, you might want to check to see what the priority of the user submitting the preferred/pre-empting job was and compare it with the priority of the user who had submitted the pre-empted/evicted job.

But an additional thought - and I'm speculating here - it would make sense to me if it turned out to be the case that the negotiator might look at a startd that was already running a job if it was trying to match a different job that had been submitted by the _same_ user. I.e. when trying to match jobs to startds for user A, the negotiator might say, something like "I'll consider idle startds and then startds claimed by user A when trying to match this job".

That's pure speculation on my part - I may be completely wrong.

	-- Bruce

--
Bruce Beckles,
e-Science Specialist,
University of Cambridge Computing Service.