Re: [RFC] CPU controllers?



Srivatsa Vaddagiri wrote:
Hello,
There have been several proposals so far on this subject and no
consensus seems to have been reached on what an acceptable CPU controller
for Linux needs to provide. I am hoping this mail will trigger some
discussions in that regard. In particular I am keen to know what the
various maintainers think about this subject.

The various approaches proposed so far are:

- CPU rate-cap (limit CPU execution rate per-task)
http://lkml.org/lkml/2006/5/26/7

- f-series CKRM controller (CPU usage guarantee for a task-group)
http://lkml.org/lkml/2006/4/27/399

- e-series CKRM controller (CPU usage guarantee/limit for a task-group)
http://prdownloads.sourceforge.net/ckrm/cpu.ckrm-e18.v10.patch.gz?download

- OpenVZ controller (CPU usage guarantee/hard-limit for a task-group)
http://openvz.org/

- vserver controller (CPU usage guarantee(?)/limit for a task-group)
http://linux-vserver.org/

(I apologize if I have missed any other significant proposal for Linux)

Their salient features and limitations/drawbacks, as I could gather, are summarized later below. To note is each controller varies in degree of complexity and addresses its own set of requirements.

In going forward for an acceptable controller in mainline it would help, IMHO, if we put together the set of requirements which the Linux CPU controller should support. Some questions that arise in this regard are:

- Do we need mechanisms to control CPU usage of tasks, further to what
already exists (like nice)? IMO yes.

Can we get back to the question of need? And from there, work out what
features are wanted.

IMHO, having containers try to virtualise all resources (memory, pagecache,
slab cache, CPU, disk/network IO...) seems insane: we may just as well use
virtualisation.

So, from my POV, I would like to be convinced of the need for this first.
I would really love to be able to keep core kernel simple and fast even if
it means edge cases might need to use a slightly different solution.

--
SUSE Labs, Novell Inc.
Send instant messages to your online friends http://au.messenger.yahoo.com -
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/



Relevant Pages

  • nForce Pro 2200 losing ticks
    ... 00:04.0 Multimedia audio controller: nVidia Corporation CK804 AC'97 ... Aperture from northbridge cpu 0 too small ... PCI Interrupt Link enabled at IRQ 19 ... # ACPI Support ...
    (Linux-Kernel)
  • 2.6.0-test9-mm1: The hardware reports a non fatal, correctable incident occurred on CPU 0.
    ... 00:1f.5 Multimedia audio controller: Intel Corp. 82801DB AC'97 Audio ... IntelPentium4 CPU 3.06GHz ... mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe cid ... host bus clock speed is 138.0645 MHz. ...
    (Linux-Kernel)
  • Re: [RFC] CPU controllers?
    ... There have been several proposals so far on this subject and no ... consensus seems to have been reached on what an acceptable CPU controller ... CPU rate-cap ... Should it support limit and guarantee both? ...
    (Linux-Kernel)
  • Re: [ckrm-tech] Re: [Lse-tech] [PATCH] cpusets - big numa cpu and memory placement
    ... >>cpu bindings, the other uses the temporal dimension of cpu time. ... cpusets have a purpose beyond isolation and that is ... would partition a machine and CKRM would operate within each partition. ... And each resource controller knows best what it ...
    (Linux-Kernel)
  • Re: k8-bus_64.c(?) spams dmesg in 2.6.26-rc1
    ... 00:04.0 Multimedia audio controller: nVidia Corporation CK804 AC'97 Audio ... 00:07.0 IDE interface: nVidia Corporation CK804 Serial ATA Controller (rev ... Movable zone start PFN for each node ... CPU: L2 Cache: 1024K ...
    (Linux-Kernel)