Patch "sched/numa: Override part of migrate_degrades_locality() when idle balancing" has been added to the 4.12-stable tree
Subsystems (2)
This is a note to let you know that I've just added the patch titled
sched/numa: Override part of migrate_degrades_locality() when idle balancing
to the 4.12-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary
The filename of the patch is:
sched-numa-override-part-of-migrate_degrades_locality-when-idle-balancing.patch
and it can be found in the queue-4.12 subdirectory.
If you, or anyone else, feels it should not be added to the stable tree, please let <[email protected]> know about it.
Quoted 1 line
From
739294fb03f590401bbd7faa6d31a507e3ffada5Mon Sep 17 00:00:00 2001
From: Rik van Riel <[email protected]>
Date: Fri, 23 Jun 2017 12:55:27 -0400
Subject: sched/numa: Override part of migrate_degrades_locality() when idle balancing
From: Rik van Riel <[email protected]>
commit 739294fb03f590401bbd7faa6d31a507e3ffada5 upstream.
Several tests in the NAS benchmark seem to run a lot slower with NUMA balancing enabled, than with NUMA balancing disabled. The slower run time corresponds with increased idle time.
Overriding the final test of migrate_degrades_locality (but still doing the other NUMA tests first) seems to improve performance of those benchmarks.
--- kernel/sched/fair.c | 4 ++++ 1 file changed, 4 insertions(+)
kernel/sched/fair.c +4 -0
@@ -6661,6 +6661,10 @@ static int migrate_degrades_locality(strif (dst_nid == p->numa_preferred_nid)return 0 ; +/* Leaving a core idle is often worse than degrading locality. */ +if (env->idle !=CPU_NOT_IDLE ) +return -1 ; +if (numa_group) { src_faults =group_faults (p, src_nid); dst_faults =group_faults (p, dst_nid);
Patches currently in stable-queue which might be from [email protected] are
queue-4.12/sched-numa-hide-numa_wake_affine-from-up-build.patch queue-4.12/sched-numa-use-down_read_trylock-for-the-mmap_sem.patch queue-4.12/sched-core-implement-new-approach-to-scale-select_idle_cpu.patch queue-4.12/sched-fair-remove-effective_load.patch queue-4.12/sched-numa-implement-numa-node-level-wake_affine.patch queue-4.12/sched-fair-simplify-wake_affine-for-the-single-socket-case.patch queue-4.12/sched-fair-cpumask-export-for_each_cpu_wrap.patch queue-4.12/sched-numa-override-part-of-migrate_degrades_locality-when-idle-balancing.patch