Messages in this thread | | | Date | Sat, 5 Dec 2009 18:38:28 +0530 | From | Bharata B Rao <> | Subject | Re: [RFC v4 PATCH 6/7] sched: Rebalance cfs runtimes |
| |
On Fri, Dec 04, 2009 at 05:09:58PM +0100, Peter Zijlstra wrote: > On Tue, 2009-11-17 at 20:07 +0530, Bharata B Rao wrote: > > sched: CFS runtime borrowing > > > > From: Bharata B Rao <bharata@linux.vnet.ibm.com> > > > > Before throttling a group, try to borrow runtime from groups that have excess. > > > > To start with, a group will get equal runtime on every cpu. If the group doesn't > > have tasks on all cpus, it might get throttled on some cpus while it still has > > runtime left on other cpus where it doesn't have any tasks to consume that > > runtime. Hence there is a chance to borrow runtimes from such cpus/cfs_rqs to > > cpus/cfs_rqs where it is required. > > > > CHECK: RT seems to be handling runtime initialization/reclaim during hotplug > > from multiple places (migration_call, update_runtime). Need to check if CFS > > also needs to do the same. > > > > Signed-off-by: Kamalesh Babulal <kamalesh@linux.vnet.ibm.com> > > --- > > kernel/sched.c | 26 ++++++++ > > kernel/sched_fair.c | 172 +++++++++++++++++++++++++++++++++++++++++++++++++++ > > kernel/sched_rt.c | 26 +------- > > 3 files changed, 202 insertions(+), 22 deletions(-) > > I think that if we unify the se/rq bandwidth structures a lot of copy > and paste can be avoided, resulting in an over-all much easier to > maintain code-base.
As you note here and also in reply to 2/7, I could definetely unify some of the bandwidth handling code b/n rt and cfs. In fact I already have patches from Dhaval for this. I was holding them back till now since I wanted to show how cfs hard limits looks like and what changes it involves and get review feedback on them. As I have said in my earlier posts, I will eventually merge code with rt. I shall do this starting from next post.
Regards, Bharata.
| |