Understanding CPU containers

Serge E. Hallyn serue at us.ibm.com
Wed Sep 9 07:03:31 PDT 2009


Quoting Mukesh G (mukgbv at gmail.com):
> Hi,
>        I am trying to understand the behavior of CPU containers as I
> am unable to explain few things.

...

> Observations
> 
>         - Unless the cpu resources are overcommitted, there is no
> value in the allocating shares to the containers.

Right.  And that observation (which is correct - there is no throttling
if cpu is available) explains the rest.

>         - 2048 vs 1024 cpu containers, the scale is 2X, except for 16 bytes
>         - 512 vs 1024 cpu containers, there is no difference at all,
> except for 16 bytes
>         - 512 vs 1024 cpu containers, there is no difference for 8192
> bytes as the remaining 2 openssl runs are complete.
>         - For CPU bound, there has to be an over commit on the CPUs
> otherwise the share allocation does not matter
>         - One cannot dynamically assign cpus to the container, by
> default, it runs on the no of cores available.
> 
> Any pointers are helpful

Hmm, there isn't a file under Documentation/cgroups?  That should
be fixed...  Meanwhile, the code is mainly in kernel/sched.c.  You
can start with the cgroup subsys definition at
	struct cgroup_subsys cpu_cgroup_subsys = { ...
(around line 10313) and fan out from there.

-serge


More information about the Containers mailing list