From: Dimitri Sivanich Date: Tue, 1 Nov 2011 00:09:46 +0000 (-0700) Subject: mm/vmstat.c: cache align vm_stat X-Git-Tag: v3.0.39~35 X-Git-Url: https://git.fsl.cs.sunysb.edu/?a=commitdiff_plain;h=9116bc4fb2f96d4a3190932bf17088174da04401;p=unionfs-2.6.39.y.git mm/vmstat.c: cache align vm_stat commit a1cb2c60ddc98ff4e5246f410558805401ceee67 upstream. Stable note: Not tracked on Bugzilla. This patch is known to make a big difference to tmpfs performance on larger machines. This was found to adversely affect tmpfs I/O performance. Tests run on a 640 cpu UV system. With 120 threads doing parallel writes, each to different tmpfs mounts: No patch: ~300 MB/sec With vm_stat alignment: ~430 MB/sec Signed-off-by: Dimitri Sivanich Acked-by: Christoph Lameter Acked-by: Mel Gorman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds Signed-off-by: Mel Gorman --- diff --git a/mm/vmstat.c b/mm/vmstat.c index 20c18b7694b..6559013c5a1 100644 --- a/mm/vmstat.c +++ b/mm/vmstat.c @@ -78,7 +78,7 @@ void vm_events_fold_cpu(int cpu) * * vm_stat contains the global counters */ -atomic_long_t vm_stat[NR_VM_ZONE_STAT_ITEMS]; +atomic_long_t vm_stat[NR_VM_ZONE_STAT_ITEMS] __cacheline_aligned_in_smp; EXPORT_SYMBOL(vm_stat); #ifdef CONFIG_SMP