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

Re: [Condor-users] Dagging deeper in priorities and ranks



On 7/17/07, Horvátth Szabolcs <szabolcs@xxxxxxxxxxxxx> wrote:
Hi,

I'm still trying to force DAG ordered job execution (so that a newly
submitted dag's jobs only start after all available jobs of the first
dag are completed) and without any success. I completely stripped all
priority and rank expressions and tried to get the basics straight:
I thought that if:
- all jobs are submitted by the same user (so user priority is not an
issue),
- none of the jobs have priority defined (so they are equally 0 by default),
- and I set NEGOTIATOR_PRE_JOB_RANK or NEGOTIATOR_POST_JOB_RANK to either
(-1 * DAGManJobId) or (5000000 -  DAGManJobId)

I get the dag ordered execution. And of course I do not. ;)

(I used the negotiator rank expression instead of priorities because it
does not require the modification of all submit
scripts and theoretically it should handle negative numbers. And if
can't use negative numbers I have to somehow
"limit" the number of jobs to do the substraction and get a positive
number for sure. Thats the 5000000 - dagmanjobid version.)

So now I have multiple questions:
- What am I doing wrong? The documentation explicitly states that
DAGManJobId can be used in expressions.

NEGOTIATOR_PRE_JOB_RANK is the preference of a job to run on a machine
which overrides the jobs rank.
NEGOTIATOR_PROST_JOB_RANK is the preference of a job to run on a
machine which is subordinate to the job's definition.

They have no effect on which job in a queue gets to run first...

- How can I check the "results" of the negotiation process? Is there any
way to see how all these expressions (user prio, job prio,
job rank, negotiator rank and the rest) came together?

The matchlog is normally a reasonable indicator if you are willing to
go back and look at the jobs which were being compared.

Matt