Re: [PATCH] Process Aggregates (PAGG) support for the 2.6 kernel

Shailabh
2004-04-30T17:53:56Z

Christoph Hellwig wrote:
> On Fri, Apr 30, 2004 at 08:54:08AM -0400, Rik van Riel wrote:
>
>>What was the last time you looked at the CKRM source?
>
>
> the day before yesterday (the patch in SuSE's tree because there
> doesn't seem to be any official patch on their website)
>
>
>>Sure it's a bit bigger than PAGG, but that's also because
>>it includes the functionality to change the group a process
>>belongs to and other things that don't seem to be included
>>in the PAGG patch.
>
>
> Again, pagg doesn't even play in that league. It's really just a tiny
> meachnism to allow a kernel module keep per-process data.

Speaking of per-process data, one of the classification engines of
CKRM called crbce, implemented as a module, allows per-process data to
be sent to userland. crbce in particular, exports data on the delays
seen by processes in a) waiting for cpu time after being runnable
b) page fault service time c) io service time etc. (getting the data
requires another kernel patch)....so per-process data needs can be met
through CKRM, though that is not the intent or main objective of the
project.

> Policies
> like process-groups can be implemented ontop of that.

This is true if one is only interested in data gathering or
coarse-grain control. One could monitor per-process stats and fiddle
with each process' rlimits (assuming all the ones needed are
available) and achieve coarse-grain group control.

But if processes leave and join process groups rapidly, you need the
schedulers and the core kernel to be aware of the groupings and
schedule resources accordingly.

In CKRM, the premise is that the privileged user defines the way
processes get grouped and could do so in a way that leads to rapid
changes in group membership. So having group control/monitoring
policies implemented as an externally loaded module (not talking of
scheduler modifications as modules, which is a no-no) is not a
palatable option.

-- Shailabh