mm: sched: numa: Delay PTE scanning until a task is scheduled on a new node
authorMel Gorman <mgorman@suse.de>
Thu, 22 Nov 2012 14:40:03 +0000 (14:40 +0000)
committerMel Gorman <mgorman@suse.de>
Tue, 11 Dec 2012 14:42:56 +0000 (14:42 +0000)
commit5bca23035391928c4c7301835accca3551b96cc2
tree2feb63abf318e6edfded8bb97b43ca29c3c5b312
parent3105b86a9fee7d2c2e76edb53bbbc4027599628f
mm: sched: numa: Delay PTE scanning until a task is scheduled on a new node

Due to the fact that migrations are driven by the CPU a task is running
on there is no point tracking NUMA faults until one task runs on a new
node. This patch tracks the first node used by an address space. Until
it changes, PTE scanning is disabled and no NUMA hinting faults are
trapped. This should help workloads that are short-lived, do not care
about NUMA placement or have bound themselves to a single node.

This takes advantage of the logic in "mm: sched: numa: Implement slow
start for working set sampling" to delay when the checks are made. This
will take advantage of processes that set their CPU and node bindings
early in their lifetime. It will also potentially allow any initial load
balancing to take place.

Signed-off-by: Mel Gorman <mgorman@suse.de>
include/linux/mm_types.h
kernel/fork.c
kernel/sched/fair.c
kernel/sched/features.h