Re: [ckrm-tech] [RFC] [PATCH 00/12] CKRM after a major overhaul

Chandra Seetharaman
2006-04-28T17:57:19Z

On Fri, 2006-04-28 at 10:07 +0400, Kirill Korotaev wrote:
> >>Worried.
> > The object of this infrastructure is to get a unified interface for
> > resource management, irrespective of the resource that is being managed.
> >
> > As I mentioned in my earlier email, subsystem experts are the ones who
> > will finally decide what type resource controller they will accept. With
> > VM experts' direction and advice, i am positive that we will get an
> > excellent memory controller (as well as other controllers).
> >
> > As you might have noticed, we have gone through major changes to come to
> > community's acceptance levels. We are now making use of all possible
> > features (kref, process event connector, configfs, module parameter,
> > kzalloc) in this infrastructure.
> >
> > Having a CPU controller, two memory controllers, an I/O controller and a
> > numtasks controller proves that the infrastructure does handle major
> > resources nicely and is also capable of managing virtual resources.
> >
> > Hope i reduced your worries (at least some :).
> Not all :) Let me explain.
>
> Until you provided something more complex then numtasks, this
> infrastructure is pure theory. For example, in your infrastracture, when
> you will add memory resource controller with data sharing, you will face
> that changing CKRM class of the tasks is almost impossible in a suitable

I do not see a problem here, there could be 2 solutions:
- do not account shared pages against the resource group(put them in
the default resource group (as some other OSs do)).
- when you are moving the task to a different class, calculate the
resource group's usage depending on how many users are using a
specific page.
> way. Another possible situation: hierarchical classes with shared memory
> are even more complicated thing.

Hierarchy is not an issue. Resource controller can calculate the
absolute number of resources (say no. of pages in this case) when the
shares are assigned and then treat all resource groups as flat.

>
> In both cases you can end up with a poor/complicated/slow solution or
> dropping some of your infrastructre features (changing class on the fly,
> hierarchy) or which is worse IMHO with incosistency between controllers
> and interfaces.

I am not convinced (based on the above explanations).
>
> Thanks,
> Kirill