Re: [PATCH 2/2] numa,sched: only consider less busy nodes as numa balancing destination

From: Srikar Dronamraju
Date: Thu May 28 2015 - 07:08:00 EST


* riel@xxxxxxxxxx <riel@xxxxxxxxxx> [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

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