[lkml]   [2012]   [Dec]   [2]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
Patch in this message
Subject[PATCH 25/52] sched, numa: Improve the CONFIG_NUMA_BALANCING help text
Add information about cost, type of optimizations, etc.,
so that the user knows what to expect.

Cc: Linus Torvalds <>
Cc: Andrew Morton <>
Cc: Peter Zijlstra <>
Cc: Andrea Arcangeli <>
Cc: Rik van Riel <>
Cc: Mel Gorman <>
Cc: Hugh Dickins <>
Signed-off-by: Ingo Molnar <>
init/Kconfig | 33 +++++++++++++++++++++++++++++++--
1 file changed, 31 insertions(+), 2 deletions(-)

diff --git a/init/Kconfig b/init/Kconfig
index 37cd8d6..018c8af 100644
--- a/init/Kconfig
+++ b/init/Kconfig
@@ -721,13 +721,42 @@ config ARCH_USES_NUMA_PROT_NONE

- bool "Memory placement aware NUMA scheduler"
+ bool "NUMA-optimizing scheduler"
default n
depends on SMP && NUMA && MIGRATION
- This option adds support for automatic NUMA aware memory/task placement.
+ This option enables NUMA-aware, transparent, automatic
+ placement optimizations of memory, tasks and task groups.
+ The optimizations work by (transparently) runtime sampling the
+ workload sharing relationship between threads and processes
+ of long-run workloads, and scheduling them based on these
+ measured inter-task relationships (or the lack thereof).
+ ("Long-run" means several seconds of CPU runtime at least.)
+ Tasks that predominantly perform their own processing, without
+ interacting with other tasks much will be independently balanced
+ to a CPU and their working set memory will migrate to that CPU/node.
+ Tasks that share a lot of data with each other will be attempted to
+ be scheduled on as few nodes as possible, with their memory
+ following them there and being distributed between those nodes.
+ This optimization can improve the performance of long-run CPU-bound
+ workloads by 10% or more. The sampling and migration has a small
+ but nonzero cost, so if your NUMA workload is already perfectly
+ placed (for example by use of explicit CPU and memory bindings,
+ or because the stock scheduler does a good job already) then you
+ probably don't need this feature.
+ [ On non-NUMA systems this feature will not be active. You can query
+ whether your system is a NUMA system via looking at the output of
+ "numactl --hardware". ]
+ Say N if unsure.

menuconfig CGROUPS
boolean "Control Group support"

 \ /
  Last update: 2012-12-02 20:41    [W:0.235 / U:0.884 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site