[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20211129113538.GN3366@techsingularity.net>
Date: Mon, 29 Nov 2021 11:35:38 +0000
From: Mel Gorman <mgorman@...hsingularity.net>
To: kernel test robot <oliver.sang@...el.com>
Cc: 0day robot <lkp@...el.com>, LKML <linux-kernel@...r.kernel.org>,
lkp@...ts.01.org, ying.huang@...el.com, feng.tang@...el.com,
zhengjun.xing@...ux.intel.com, fengwei.yin@...el.com,
guobing.chen@...el.com, ming.a.chen@...el.com, frank.du@...el.com,
Shuhua.Fan@...el.com, wangyang.guo@...el.com,
Wenhuan.Huang@...el.com, jessica.ji@...el.com, shan.kang@...el.com,
guangli.li@...el.com, tiejun.li@...el.com, yu.ma@...el.com,
dapeng1.mi@...el.com, jiebin.sun@...el.com, gengxin.xie@...el.com,
fan.zhao@...el.com, Peter Zijlstra <peterz@...radead.org>,
Ingo Molnar <mingo@...nel.org>,
Vincent Guittot <vincent.guittot@...aro.org>,
Valentin Schneider <valentin.schneider@....com>,
Aubrey Li <aubrey.li@...ux.intel.com>,
Barry Song <song.bao.hua@...ilicon.com>,
Mike Galbraith <efault@....de>,
Srikar Dronamraju <srikar@...ux.vnet.ibm.com>,
yu.c.chen@...el.com
Subject: Re: [sched/fair] b4d95a034c:
phoronix-test-suite.tiobench.RandomWrite.64MB.8.mb_s -26.3% regression
On Sun, Nov 28, 2021 at 11:06:58PM +0800, kernel test robot wrote:
>
>
> Greeting,
>
> FYI, we noticed a -26.3% regression of phoronix-test-suite.tiobench.RandomWrite.64MB.8.mb_s due to commit:
>
>
> commit: b4d95a034cffb1e4424874645549d3cac2de5c02 ("[PATCH 2/2] sched/fair: Adjust the allowed NUMA imbalance when SD_NUMA spans multiple LLCs")
> url: https://github.com/0day-ci/linux/commits/Mel-Gorman/Adjust-NUMA-imbalance-for-multiple-LLCs/20211125-232336
> base: https://git.kernel.org/cgit/linux/kernel/git/tip/tip.git 8c92606ab81086db00cbb73347d124b4eb169b7e
>
> in testcase: phoronix-test-suite
> on test machine: 96 threads 2 sockets Intel(R) Xeon(R) Gold 6252 CPU @ 2.10GHz with 128G memory
> with following parameters:
>
> test: tiobench-1.3.1
> option_a: Random Write
> option_b: 64MB
> option_c: 8
> cpufreq_governor: performance
> ucode: 0x5003006
>
> test-description: The Phoronix Test Suite is the most comprehensive testing and benchmarking platform available that provides an extensible framework for which new tests can be easily added.
> test-url: http://www.phoronix-test-suite.com/
>
Ok, while I'm surprised there is a difference with tiobench, there
definitely is a problem with the patch and a v3 is needed. Am queueing
up a test of v3 but the diff is
diff --git a/kernel/sched/topology.c b/kernel/sched/topology.c
index 9adeaa89ccb4..fee2930745ab 100644
--- a/kernel/sched/topology.c
+++ b/kernel/sched/topology.c
@@ -2244,25 +2244,21 @@ build_sched_domains(const struct cpumask *cpu_map, struct sched_domain_attr *att
/* Calculate allowed NUMA imbalance */
for_each_cpu(i, cpu_map) {
+ int imb_numa_nr = 0;
+
for (sd = *per_cpu_ptr(d.sd, i); sd; sd = sd->parent) {
struct sched_domain *child = sd->child;
- if (!(sd->flags & SD_SHARE_PKG_RESOURCES) &&
+ if (!(sd->flags & SD_SHARE_PKG_RESOURCES) && child &&
(child->flags & SD_SHARE_PKG_RESOURCES)) {
- struct sched_domain *sd_numa = sd;
- int imb_numa_nr, nr_groups;
+ int nr_groups;
nr_groups = sd->span_weight / child->span_weight;
- imb_numa_nr = nr_groups / num_online_nodes();
-
- while (sd_numa) {
- if (sd_numa->flags & SD_NUMA) {
- sd_numa->imb_numa_nr = imb_numa_nr;
- break;
- }
- sd_numa = sd_numa->parent;
- }
+ imb_numa_nr = max(1U, ((child->span_weight) >> 1) /
+ (nr_groups * num_online_nodes()));
}
+
+ sd->imb_numa_nr = imb_numa_nr;
}
}
Powered by blists - more mailing lists