loadavg-based
The loadavg-based configuration is one of the rules used for managing CPUs with the cpuplugd daemon.
The full configuration file is listed in cpuplugd configuration files.
HOTPLUG="(loadavg > onumcpus + 0.75) & (idle < 10.0)"
HOTUNPLUG="(loadavg < onumcpus - 0.25) | (idle > 50)"- The system plugs CPUs when there are both more runnable processes and threads than active CPUs and the system is less than 10% idle
- The system removes CPUs when either the amount of runnable processes and threads is 25% below the number of active CPUs or the system is more than 50% idle

| Configuration | TPS* | Relative CPU load* |
|---|---|---|
| loadavg-based | 88% | 84% |
| *100% is the manual-sized run | ||
Observation
The number of CPUs is lower than manually sized for most of the time. The combo-system is frequently reduced to 1 CPU for a short time. The throughput is significantly reduced.
Conclusion
The value of loadavg determines
the amount of runnable processes or threads averaged over a certain
time period, for example, one 1 minute. It seems that this value changes
very slowly and results in a system running short on CPUs. The guests
running a WebSphere® application
server are always highly utilized, but the rules do not add the required
CPUs, which leads to the observed reduction in throughput.
This configuration is probably useful when trying to restrict the addition of CPUs and to accept that the guests run CPU-constrained with the corresponding impact on throughput, for example in an environment with a very high level of CPU overcommitment.