aboutsummaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorAnton Blanchard <anton@samba.org>2011-07-24 12:33:12 -0400
committerBenjamin Herrenschmidt <benh@kernel.crashing.org>2011-09-20 01:53:21 -0400
commita200d8e44649de2cbb39de95f42ad4ef5dc8dc22 (patch)
tree0145abaaf32e143fc408c8b4dc9fd5cf298d1780 /arch
parent1cce058b29e7eb8a71a72d8bb87eb7b4e0401c22 (diff)
powerpc/numa: Enable SD_WAKE_AFFINE in node definition
When chasing a performance issue on ppc64, I noticed tasks communicating via a pipe would often end up on different nodes. It turns out SD_WAKE_AFFINE is not set in our node defition. Commit 9fcd18c9e63e (sched: re-tune balancing) enabled SD_WAKE_AFFINE in the node definition for x86 and we need a similar change for ppc64. I used lmbench lat_ctx and perf bench pipe to verify this fix. Each benchmark was run 10 times and the average taken. lmbench lat_ctx: before: 66565 ops/sec after: 204700 ops/sec 3.1x faster perf bench pipe: before: 5.6570 usecs after: 1.3470 usecs 4.2x faster Signed-off-by: Anton Blanchard <anton@samba.org> Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Diffstat (limited to 'arch')
-rw-r--r--arch/powerpc/include/asm/topology.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/powerpc/include/asm/topology.h b/arch/powerpc/include/asm/topology.h
index 7ef0d90defc8..6a7e7251cc02 100644
--- a/arch/powerpc/include/asm/topology.h
+++ b/arch/powerpc/include/asm/topology.h
@@ -73,7 +73,7 @@ static inline int pcibus_to_node(struct pci_bus *bus)
73 | 1*SD_BALANCE_EXEC \ 73 | 1*SD_BALANCE_EXEC \
74 | 1*SD_BALANCE_FORK \ 74 | 1*SD_BALANCE_FORK \
75 | 0*SD_BALANCE_WAKE \ 75 | 0*SD_BALANCE_WAKE \
76 | 0*SD_WAKE_AFFINE \ 76 | 1*SD_WAKE_AFFINE \
77 | 0*SD_PREFER_LOCAL \ 77 | 0*SD_PREFER_LOCAL \
78 | 0*SD_SHARE_CPUPOWER \ 78 | 0*SD_SHARE_CPUPOWER \
79 | 0*SD_POWERSAVINGS_BALANCE \ 79 | 0*SD_POWERSAVINGS_BALANCE \