Re: [RFC] CPU hard limits

Mike Waychison
2009-06-04T21:32:53Z

Avi Kivity wrote:
> Bharata B Rao wrote:
>> 2. Need for hard limiting CPU resource
>> --------------------------------------
>> - Pay-per-use: In enterprise systems that cater to multiple clients/customers
>> where a customer demands a certain share of CPU resources and pays only
>> that, CPU hard limits will be useful to hard limit the customer's job
>> to consume only the specified amount of CPU resource.
>> - In container based virtualization environments running multiple containers,
>> hard limits will be useful to ensure a container doesn't exceed its
>> CPU entitlement.
>> - Hard limits can be used to provide guarantees.
>>
> How can hard limits provide guarantees?

Hard limits are useful and desirable in situations where we would like
to maintain deterministic behavior.

Placing a hard cap on the cpu usage of a given task group (and
configuring such that this cpu time is not overcommited) on a system
allows us to create a hard guarantee that throughput for that task group
will not fluctuate as other workloads are added and removed on the system.

Cache use and bus bandwidth in a multi-workload environment can still
cause a performance deviation, but these are second order compared to
the cpu scheduling guarantees themselves.

Mike Waychison