[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <f1eed7cb-ea9f-08c4-153d-36006ffc033c@amd.com>
Date: Fri, 11 Aug 2017 12:58:22 +0700
From: Suravee Suthikulpanit <Suravee.Suthikulpanit@....com>
To: Peter Zijlstra <peterz@...radead.org>
Cc: linux-kernel@...r.kernel.org, mingo@...hat.com, bp@...e.de
Subject: Re: [RFC PATCH] sched/topology: Introduce NUMA identity node sched
domain
On 8/11/17 11:57, Suravee Suthikulpanit wrote:
>
>>> [...]
>>> @@ -1445,9 +1448,24 @@ void sched_init_numa(void)
>>> tl[i] = sched_domain_topology[i];
>>>
>>> /*
>>> + * Ignore the NUMA identity level if it has the same cpumask
>>> + * as previous level. This is the case for:
>>> + * - System with last-level-cache (MC) sched domain span a NUMA node.
>>> + * - System with DIE sched domain span a NUMA node.
>>> + *
>>> + * Assume all NUMA nodes are identical, so only check node 0.
>>> + */
>>> + if (!cpumask_equal(sched_domains_numa_masks[0][0], tl[i-1].mask(0)))
>>> + tl[i++] = (struct sched_domain_topology_level){
>>> + .mask = sd_numa_mask,
>>> + .numa_level = 0,
>>> + SD_INIT_NAME(NODE)
>>> + };
>>
>> So what you've forgotten to mention is that for those systems where the
>> LLC == NODE this now superfluous level gets removed by the degenerate
>> code. Have you verified that does the right thing?
>
> Let me check with that one and get back.
Actually, it is not removed by the degenerate code. That is what this logic is
for. It checks for LCC == NODE or DIE == NODE before setting up the NODE sched
level. I can update the comment. This has also been tested on system w/ LLC == NODE.
Thanks,
Suravee
Powered by blists - more mailing lists