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

From: Peter Zijlstra
Date: Fri Nov 14 2008 - 03:03:22 EST


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.


--
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/