2008-03-31 02:06:01

by Eric Descourtis

[permalink] [raw]
Subject: Limiting CPU usage for processes in linux 2.6.18.8

Hello,

I would like to implement a patch to the scheduler that limits the CPU usage of individual
processes to a percentage in Linux 2.6.18.8 (Can't be any other version).
I would just like some feedback on the following questions:

1. How can I ensure that limited processes get their CPU time percentage allocation?
2. Are there mechanisms in place that would simplify this process?

I have been hitting my head against the wall for a long time now, any help would be appreciated.

Thank you.

Eric des Courtis
CC: [email protected]


2008-03-31 15:25:42

by Bryan Donlan

[permalink] [raw]
Subject: Re: Limiting CPU usage for processes in linux 2.6.18.8

On Sun, Mar 30, 2008 at 9:37 PM, Eric Descourtis
<[email protected]> wrote:
> Hello,
>
> I would like to implement a patch to the scheduler that limits the CPU usage of individual
> processes to a percentage in Linux 2.6.18.8 (Can't be any other version).
> I would just like some feedback on the following questions:
>
> 1. How can I ensure that limited processes get their CPU time percentage allocation?
> 2. Are there mechanisms in place that would simplify this process?
>
> I have been hitting my head against the wall for a long time now, any help would be appreciated.

The scheduler isn't really designed to force programs to idle when
there's nothing else to run - that would be a waste :)

If the reason you're on 2.6.18.8 is for Xen, you might want to try
using a recent kernel with paravirt ops, and use the CFS fair group
(or user) scheduler to set cpu shares. See
Documentation/sched-design-CFS.txt . If you really want to eat up a
certain portion of CPU time doing nothing, you could create a program
to busy-loop to starve the others and set CPU shares appropriately,
though I don't really see the point in that.