We have a test execute machine with 100 partitionable slots of
48 cores and 2 GB RAM per core. Everything is fake, just for
testing purposes and running sleep commands. We are using
HTCondor 9.0.12 in this test environment.
We are doing different tests submitting a batch of 100 jobs
and changing the number of requested cpus to this execute
machine. When we submit 100 jobs requesting 48 cores, the 100
jobs start in the first negotiator cycle. When we submit 100
jobs of 24 cores, 75 jobs start in the first cycle, with 8
cores, 31 jobs in the first cycle, and with 1 core only 6 jobs
start in the first cycle.
We have been looking in the manual for negotiator, schedd,
startd, or any configuration variable that explains this
behavior but we were not lucky. Is there any way to enforce
for instance that all the jobs enter in the first negotiator
cycle even if requesting one CPU? Our guess is that there are
some configuration and timeouts regarding the creation of the
dynamic slots, etc., that are affecting this case, or maybe
this is related to the auto clustering on the negotiator side?
Thank you in advance and have a nice weekend!