Re: [PATCH] Assign CPUs to nodes in round-robin manner on FakeNUMA.

From: Andrew Morton
Date: Thu Oct 07 2010 - 03:42:27 EST


On Thu, 30 Sep 2010 17:34:10 +0530 Nikanth Karthikesan <knikanth@xxxxxxx> wrote:

> Assign CPUs to nodes in round-robin manner on Fake NUMA.
>
> commit d9c2d5ac6af87b4491bff107113aaf16f6c2b2d9
> "x86, numa: Use near(er) online node instead of roundrobin for NUMA"
> changed NUMA initialization on Intel to choose the nearest online node or
> first node. Fake NUMA would be better of with round-robin initialization,
> instead of the all CPUS on first node. Change the choice of first node, back
> to round-robin.
>

Why would fake NUMA "be better off with round-robin initialization"?

>
> ---
>
> diff --git a/arch/x86/kernel/cpu/intel.c b/arch/x86/kernel/cpu/intel.c
> index 85f69cd..47dd171 100644
> --- a/arch/x86/kernel/cpu/intel.c
> +++ b/arch/x86/kernel/cpu/intel.c
> @@ -283,9 +283,7 @@ static void __cpuinit srat_detect_node(struct cpuinfo_x86 *c)
> /* Don't do the funky fallback heuristics the AMD version employs
> for now. */
> node = apicid_to_node[apicid];
> - if (node == NUMA_NO_NODE)
> - node = first_node(node_online_map);
> - else if (!node_online(node)) {
> + if (node == NUMA_NO_NODE || !node_online(node)) {
> /* reuse the value from init_cpu_to_node() */
> node = cpu_to_node(cpu);
> }
> --
> 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/
--
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/