Mailing List Archives
Authenticated access
|
|
|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Condor-users] Is VM_MAX_NUMBER a redundant macro?
- Date: Mon, 13 Jul 2009 20:05:14 -0700 (PDT)
- From: Rob <spamrefuse@xxxxxxxxx>
- Subject: Re: [Condor-users] Is VM_MAX_NUMBER a redundant macro?
Jaime Frey wrote:
>
> VM_MAX_NUMBER is working properly, though its behavior is a little odd.
> If its value isn't a positive integer, then there's no limit on the number of VMs
> (other than the number of slots). No error is written to the log in the event of
> an invalid value. The number of additional VMs that can be started is advertised
> as 'VM_AvailNum' in the machine ad. In the unlimited case, the value is set to 10000.
Jaime,
I disagree with your explanation in as far as this is documented.
In the condor_config file it explained like this:
//snippet ================
## In default, the number of possible virtual machines is same as
## NUM_CPUS.
## Since too many virtual machines can cause the system to be too slow
## and lead to unexpected problems, limit the number of running
## virtual machines on this machine with
//end snippet ================
Also in other condor documentation I can find:
//===========
VM_MAX_NUMBER
An integer limit on the number of executing virtual machines.
When not defined, the default value is the same NUM_CPUS.
//===========
However, in practice I get following situations:
1) If I don't set VM_MAX_NUMBER at all in the config file (relying on the default),
then:
=> condor_config_val.exe reports that VM_MAX_NUMBER macro is not defined
=> In the machine's adds: VM_AvailNum = 10000
2) If I EXPLICITY set in the condor_config file: VM_MAX_NUMBER = $(NUM_CPUS)
=> condor_config_val.exe reports that VM_MAX_NUMBER macro is not defined
=> In the machine's adds: VM_AvailNum = 10000
3) If I set in the condor_config file: VM_MAX_NUMBER = 2
=> condor_config_val.exe reports that VM_MAX_NUMBER macro equals 2
=> In the machine's adds: VM_AvailNum = 2
If this is not a bug, then at the least the documentation is wrong!
The value of VM_MAX_NUMBER never defaults to the number of CPUs in the machine,
unless this macro is explicitly set so with a hardcoded integer (like my third example).
I assume this inconsistency with the documentation easily leads to buggy situations,
as I relied on a default behaviour (= number of CPUs), but instead that defaults to 10000 !!!!
I think the original idea to let it default to the number of CPUs is very neat, but somehow
the code does not do this.
Regards,
Rob.