[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20201203141124.7391-9-mgorman@techsingularity.net>
Date: Thu, 3 Dec 2020 14:11:22 +0000
From: Mel Gorman <mgorman@...hsingularity.net>
To: LKML <linux-kernel@...r.kernel.org>
Cc: Aubrey Li <aubrey.li@...ux.intel.com>,
Barry Song <song.bao.hua@...ilicon.com>,
Ingo Molnar <mingo@...hat.com>,
Peter Ziljstra <peterz@...radead.org>,
Juri Lelli <juri.lelli@...hat.com>,
Vincent Guittot <vincent.guittot@...aro.org>,
Valentin Schneider <valentin.schneider@....com>,
Linux-ARM <linux-arm-kernel@...ts.infradead.org>,
Mel Gorman <mgorman@...hsingularity.net>
Subject: [PATCH 08/10] sched/fair: Reintroduce SIS_AVG_CPU but in the context of SIS_PROP to reduce search depth
Subject says it all but no supporting data at this time. This might help
the hackbench case in isolation or throw other workloads under the bus.
Final version will have proper data.
Signed-off-by: Mel Gorman <mgorman@...hsingularity.net>
---
kernel/sched/fair.c | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c
index 185fc6e28f8e..33ce65b67381 100644
--- a/kernel/sched/fair.c
+++ b/kernel/sched/fair.c
@@ -6024,6 +6024,14 @@ static int sis_search_depth(struct sched_domain *sd, struct sched_domain *this_s
nr = div_u64(span_avg, avg_cost);
else
nr = 4;
+
+ /*
+ * Throttle the depth search futher if average idle time is
+ * below the average cost. This is primarily to deal with
+ * the saturated case where searches are likely to fail.
+ */
+ if (avg_idle < avg_cost)
+ nr >>= 1;
}
return nr;
--
2.26.2
Powered by blists - more mailing lists