lkml.org 
[lkml]   [2013]   [Dec]   [10]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH v3 09/12] sched/numa: fix task scan rate adjustment
On Tue, Dec 10, 2013 at 01:44:35AM -0500, Naoya Horiguchi wrote:
> Hi Wanpeng,
>
> On Sun, Dec 08, 2013 at 02:14:50PM +0800, Wanpeng Li wrote:
> > commit 04bb2f947 (sched/numa: Adjust scan rate in task_numa_placement) calculate
> > period_slot which should be used as base value of scan rate increase if remote
> > access dominate. However, current codes forget to use it, this patch fix it.
> >
> > Signed-off-by: Wanpeng Li <liwanp@linux.vnet.ibm.com>
> > ---
> > kernel/sched/fair.c | 2 +-
> > 1 files changed, 1 insertions(+), 1 deletions(-)
> >
> > diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c
> > index 7073c76..b077f1b3 100644
> > --- a/kernel/sched/fair.c
> > +++ b/kernel/sched/fair.c
> > @@ -1358,7 +1358,7 @@ static void update_task_scan_period(struct task_struct *p,
> > */
> > period_slot = DIV_ROUND_UP(diff, NUMA_PERIOD_SLOTS);
> > ratio = DIV_ROUND_UP(private * NUMA_PERIOD_SLOTS, (private + shared));
> > - diff = (diff * ratio) / NUMA_PERIOD_SLOTS;
> > + diff = (period_slot * ratio) / NUMA_PERIOD_SLOTS;
> > }
> >
> > p->numa_scan_period = clamp(p->numa_scan_period + diff,
>
> It seems to me that the original code is correct, because the mathematical
> meaning of this hunk is clear:
>
> diff = (diff calculated by local-remote ratio) * (private-shared ratio)
>

Thanks Naoya.

The original code is as intended and was meant to scale the difference
between the NUMA_PERIOD_THRESHOLD and local/remote ratio when adjusting
the scan period. The period_slot recalculation can be dropped.

--
Mel Gorman
SUSE Labs


\
 
 \ /
  Last update: 2013-12-10 10:41    [W:0.046 / U:0.116 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site