Messages in this thread | | | Date | Thu, 28 May 2015 16:37:41 +0530 | From | Srikar Dronamraju <> | Subject | Re: [PATCH 2/2] numa,sched: only consider less busy nodes as numa balancing destination |
| |
* riel@redhat.com <riel@redhat.com> [2015-05-27 15:04:28]:
> > diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c > index c47bf0dffb34..f655f2ad155d 100644 > --- a/kernel/sched/fair.c > +++ b/kernel/sched/fair.c > @@ -1398,6 +1398,30 @@ static void task_numa_find_cpu(struct task_numa_env *env, > } > } > > +/* Only move tasks to a NUMA node less busy than the current node. */ > +static bool numa_has_capacity(struct task_numa_env *env) > +{ > + struct numa_stats *src = &env->src_stats; > + struct numa_stats *dst = &env->dst_stats; > + > + if (src->has_free_capacity && !dst->has_free_capacity) > + return false; > + > + /* > + * Only consider a task move if the source has a higher destination > + * than the destination, corrected for CPU capacity on each node.
In the above comment, did you mean source has higher load than the destination?
> + * > + * src->load dst->load > + * --------------------- vs --------------------- > + * src->compute_capacity dst->compute_capacity > + */ > + if (src->load * dst->compute_capacity > > + dst->load * src->compute_capacity) > + return true; > + > + return false; > +} > + >
-- Thanks and Regards Srikar Dronamraju
| |