Hi all,
I'm wondering if concurrency limits are supposed to word with
dynamic slots ?
I am running two htcondor pools; one static and one dynamic. On both
we have concurrency set up as shown below:
CONCURRENCY_LIMIT_DEFAULT = 5
CONCURRENCY_LIMIT_DEFAULT_EIGHT = 8
CONCURRENCY_LIMIT_DEFAULT_TEN = 10
CONCURRENCY_LIMIT_DEFAULT_FIFTEEN = 15
CONCURRENCY_LIMIT_DEFAULT_TWENTY = 20
CONCURRENCY_LIMIT_DEFAULT_TWENTYFIVE = 25
If I run a simple test job like this;
UniverseÂÂÂÂÂÂ = vanilla
ExecutableÂÂÂÂ = /bin/sleep
ArgumentsÂÂÂÂÂ = 240
RequestMemory = 5371
RequestCpus = 1
getenv = True
inputÂÂ = /dev/null
Requirements = MachineOwner == "htcluster"
output = hello.$(Process).outÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂ
errorÂÂ = hello.$(Process).errorÂÂÂÂÂÂ
concurrency_limits = thirty.test
ÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂ
notification=never
queue 200
On the 'static' cluster (htcluster) it works as expected and I never
get more than 30 jobs running, but on the dynamic cluster I get as
many as can be allocated.
This is the complete set of configuration differences for the two
clusters, which I would not anticipate would intefere with
concurrency limits.
42c42
< CONDOR_HOST = htcondormaster1
---
> CONDOR_HOST = htdmaster1
45c45
< COLLECTOR_NAME = HT-TRC
---
> COLLECTOR_NAME = HTDYN
55c55
< DedicatedScheduler = "DedicatedScheduler@el6study1"
---
> DedicatedScheduler =
"DedicatedScheduler@htdsubmit1"
61c61
< MachineOwner = "htcluster"
---
> MachineOwner = "htdcluster"
130,131c130
< # limit memory limited job wrapper on shared
nodes.
< USER_JOB_WRAPPER =
/usr/local/sbin/os/condor_ulimit_job_wrapper.sh
---
> USER_JOB_WRAPPER =
/usr/local/sbin/os/condor_dynamic_ulimit_job_wrapper.sh
132a132,135
> # Don't enforce CPU affinity for dynamic slots
> ENFORCE_CPU_AFFINITY=False
> # Settings for dynamic slots
> NUM_SLOTS=1
134c137,147
< DAEMON_LIST = MASTER, STARTD
---
> NUM_SLOTS_TYPE_1Â =Â 1
> SLOT_TYPE_1_PARTITIONABLE = True
>
>
> # give out memory in chunks of 5371
> MODIFY_REQUEST_EXPR_REQUESTMEMORY =
quantize(RequestMemory,5371)
> # modify cpu to be based on percentage of memory
> MODIFY_REQUEST_EXPR_REQUESTCPUS =
quantize(RequestCpus, ceiling(real(RequestMemory)/128905 *24))
> #set cgroup
> BASE_CGROUP=htcluster
>
Am I missing something ?
Thanks
Jody
|