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. _______________________________________________ Virtualization mailing list Virtualization@xxxxxxxxxxxxxxxxxxxxxxxxxx https://lists.linux-foundation.org/mailman/listinfo/virtualization