[Devel] RE: [patch 0/4] [RFC] Another proportional weight IO controller

Peter Zijlstra peterz at infradead.org
Fri Nov 14 00:02:15 PST 2008


On Fri, 2008-11-14 at 13:58 +0900, Satoshi UCHIDA wrote:

> > I think Satoshi's cfq controller patches also do not seem to be considering
> > A, B, C, D and E to be at same level, instead it treats cgroup "/" , D and
> > E
> > at same level and tries to do proportional BW division among these.
> > Satoshi, please correct me, if that's not the case.
> > 
> 
> Yes.
> I think that a controller should be divided share among "/(root)" and two groups.
> This reason is follows:
> 
>   * If these tasks are handled at same level, it is enough by using a traditional 
>     CFQ scheduler.
>     If you want to make all tasks in the same group the same priority(parameter),
>     It is not I/O control but is parameter control.
>     
>   * I think that the group means the environment which makes some sense and 
>     user want to control I/O per groups.
>     Next, the group is the environment.  So, tasks within the group will have
>     priorities for themselves respectively as traditional environment.
>     Of course, group may not be need to control I/O.
>     In such time, a ioprio of tasks should be set the same priority.
> 
> Therefore, our scheduler controls among group and then among tasks

I would suggest abandoning this scheme as its different from how the CPU
scheduler does it. The CPU scheduler is fully hierarchical and tasks in
"/" are on the same level as groups in "/".

That is, we do:

      root
      / | \
     1  2  A
          / \
         B   3
        / \
       4   5

Where digits are tasks, and letters are groups.

Having the two bandwidth (CPU, I/O) doing different things wrt grouping
can only be confusing at best.


_______________________________________________
Containers mailing list
Containers at lists.linux-foundation.org
https://lists.linux-foundation.org/mailman/listinfo/containers




More information about the Devel mailing list