| From: |
| Mel Gorman <mgorman-AT-techsingularity.net> |
| To: |
| Peter Zijlstra <peterz-AT-infradead.org> |
| Subject: |
| [PATCH v6 0/2] Adjust NUMA imbalance for multiple LLCs |
| Date: |
| Tue, 08 Feb 2022 09:43:32 +0000 |
| Message-ID: |
| <20220208094334.16379-1-mgorman@techsingularity.net> |
| Cc: |
| Ingo Molnar <mingo-AT-kernel.org>, Vincent Guittot <vincent.guittot-AT-linaro.org>, Valentin Schneider <valentin.schneider-AT-arm.com>, Aubrey Li <aubrey.li-AT-linux.intel.com>, Barry Song <song.bao.hua-AT-hisilicon.com>, Mike Galbraith <efault-AT-gmx.de>, Srikar Dronamraju <srikar-AT-linux.vnet.ibm.com>, Gautham Shenoy <gautham.shenoy-AT-amd.com>, K Prateek Nayak <kprateek.nayak-AT-amd.com>, LKML <linux-kernel-AT-vger.kernel.org>, Mel Gorman <mgorman-AT-techsingularity.net> |
| Archive-link: |
| Article |
Changelog sinve v5
o Fix off-by-one error
Changelog since V4
o Scale imbalance based on the top domain that prefers siblings
o Keep allowed imbalance as 2 up to the point where LLCs can be overloaded
Changelog since V3
o Calculate imb_numa_nr for multiple SD_NUMA domains
o Restore behaviour where communicating pairs remain on the same node
Commit 7d2b5dd0bcc4 ("sched/numa: Allow a floating imbalance between NUMA
nodes") allowed an imbalance between NUMA nodes such that communicating
tasks would not be pulled apart by the load balancer. This works fine when
there is a 1:1 relationship between LLC and node but can be suboptimal
for multiple LLCs if independent tasks prematurely use CPUs sharing cache.
The series addresses two problems -- inconsistent logic when allowing a
NUMA imbalance and sub-optimal performance when there are many LLCs per
NUMA node.
include/linux/sched/topology.h | 1 +
kernel/sched/fair.c | 30 ++++++++++---------
kernel/sched/topology.c | 53 ++++++++++++++++++++++++++++++++++
3 files changed, 71 insertions(+), 13 deletions(-)
--
2.31.1