A new cgroup cpu.max.concurrency controller interface file

Day 1 | 11:00 | 00:10 | UD2.218A | Mathieu Desnoyers


Note: I'm reworking this at the moment, some things won't work.

The stream isn't available yet! Check back at 11:00.

This lightning talk discusses an ongoing effort to add a new cpu.max.concurrency interface file to the Linux cgroup CPU controller to facilitate expressing constraints on the number of CPUs which can be used concurrently by threads belonging to the cgroup.

This new interface file will define the maximum number of concurrently running threads for the cgroup. Extend the scheduler to track the number of CPUs concurrently used by the cgroup, and prevent migration when the number of concurrently used CPUs is above the maximum threshold.

The purpose of this new interface is to limit the amount of resident memory needed for userspace per-CPU data, and tune the number of worker threads to the cgroup constraints.