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

Re: [Condor-users] Example jobs don't start



In your condor directory, there should be a directory of the type
'hosts/name-of-the-machine'
In there should be the local config file: condor_config.local, that's what
you want to edit.
Have a look at the main config file in your condor directory, you can see
where KeyboardIdle appears.

In part 3, the default should look like
START = $(UWCS_START)
...
SUSPEND = $(UWCS_SUSPEND)
...
CONTINUE = $(UWCS_CONTINUE)
And so on. The definition of UWCS_xxxx appears a little bit later in the
file, and includes a condition on
KeyboardIdle. What I advise you is to copy the content in the definition of
UWCS_xxxx and paste it in your local config file and then remove the
condition on KeyboardIdle, without editing the main file. You can find more
details on how to tune all that in the manual. 
I guess it's easier by an example, below is part of my
condor-dir/hosts/jbn7/condor_config.local (jbn7 is the name of my machine)

I hope it helps,

Thomas

--------------------------------------------------------------------------
##  This section contains macros are here to help write legible
##  expressions:
MINUTE		= 60
HOUR		= (60 * $(MINUTE))
StateTimer	= (CurrentTime - EnteredCurrentState)
ActivityTimer	= (CurrentTime - EnteredCurrentActivity)
ActivationTimer = (CurrentTime - JobStart)
LastCkpt	= (CurrentTime - LastPeriodicCheckpoint)

##  The JobUniverse attribute is just an int.  These macros can be
##  used to specify the universe in a human-readable way:
STANDARD	= 1
PVM		= 4
VANILLA		= 5
MPI		= 8
IsPVM           = (TARGET.JobUniverse == $(PVM))
IsMPI           = (TARGET.JobUniverse == $(MPI))
IsVanilla       = (TARGET.JobUniverse == $(VANILLA))
IsStandard      = (TARGET.JobUniverse == $(STANDARD))

NonCondorLoadAvg	= (LoadAvg - CondorLoadAvg)
BackgroundLoad		= 0.3
HighLoad		= 0.5
StartIdleTime		= 15 * $(MINUTE)
ContinueIdleTime	=  5 * $(MINUTE)
MaxSuspendTime		= 10 * $(MINUTE)
MaxVacateTime		= 30 * $(MINUTE)

KeyboardBusy		= (KeyboardIdle < $(MINUTE))
ConsoleBusy		= (ConsoleIdle  < $(MINUTE))
CPUIdle			= ($(NonCondorLoadAvg) <= $(BackgroundLoad))
CPUBusy			= ($(NonCondorLoadAvg) >= $(HighLoad))
CPUNotBusy		= ($(NonCondorLoadAvg) <  $(HighLoad))

BigJob		= (TARGET.ImageSize >= (50 * 1024))
MediumJob	= (TARGET.ImageSize >= (15 * 1024) && TARGET.ImageSize < (50
* 1024))
SmallJob	= (TARGET.ImageSize <  (15 * 1024))

JustCPU			= ($(CPUBusy) && ($(KeyboardBusy) == False))
MachineBusy		= ($(CPUBusy) || $(KeyboardBusy))
NIGHT_OR_WE		= ((clockday==0) || (clockday==6) \
                            || (clockmin<480) || (clockmin>1080))

# I want priority on my machine during working hours:
RANK			= ((Owner=="materna") || $(NIGHT_OR_WE))

WANT_SUSPEND 		= ( $(SmallJob) || $(IsPVM) || $(IsVanilla) )
WANT_VACATE		= $(UWCS_WANT_VACATE)

##  When is this machine willing to start a job? 
############################################################################
####
##### This is the part interestting to you, Nicolas
##### See, the job start when the cpu is idle but I disregarg the keyboard
##### change also the other definitions, otherwise your job will start but
will
##### be stopped immidiately because of the keyboard
############################################################################
####
START			= ( $(CPUIdle) || (State != "Unclaimed" && State !=
"Owner") )

##  When to suspend a job?
##  cpu busy for >2 minutes and the job has run for more than 5 minutes
SUSPEND			= ( (CpuBusyTime > 15) \
                   && $(ActivationTimer) > 120 ) 

##  When to resume a suspended job?
# after 20 sec of no cpu activity
CONTINUE		= ( $(CPUIdle) && ($(ActivityTimer) > 20) )

##  When to nicely stop a job?
##  (as opposed to killing it instantaneously)
# if the job is standard and has been suspended for more than 10 min, stop
it
# if it's not a standard job, stopping it means killing! So we let it run
PREEMPT			= ( (    (Activity == "Suspended") \
                      && ($(ActivityTimer) > $(MaxSuspendTime)) \
                      && $(IsStandard)) \
                  || (SUSPEND && (WANT_SUSPEND == False)) )

##  When to instantaneously kill a preempting job
##  (e.g. if a job is in the pre-empting stage for too long)
KILL			= $(ActivityTimer) > $(MaxVacateTime)

## Update the benchmark regularly (every 4 hours)
BenchmarkTimer = (CurrentTime - LastBenchmark)
RunBenchmarks : (LastBenchmark == 0 ) || ($(BenchmarkTimer) >= (4 *
$(HOUR)))


Cyclotron Institute, Texas A&M university
ZIP 77843-3366
(979)-845-1411 ext. 258