lkml.org 
[lkml]   [2012]   [Jul]   [23]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 01/34] mm: vmstat: cache align vm_stat
    Date
    From: Dimitri Sivanich <sivanich@sgi.com>

    commit a1cb2c60ddc98ff4e5246f410558805401ceee67 upstream.

    Stable note: Not tracked on Bugzilla. This patch is known to make a big
    difference to tmpfs performance on larger machines.

    Avoid false sharing of the vm_stat array. 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 <sivanich@sgi.com>
    Acked-by: Christoph Lameter <cl@gentwo.org>
    Acked-by: Mel Gorman <mel@csn.ul.ie>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Mel Gorman <mgorman@suse.de>
    ---
    mm/vmstat.c | 2 +-
    1 file changed, 1 insertion(+), 1 deletion(-)

    diff --git a/mm/vmstat.c b/mm/vmstat.c
    index 20c18b7..6559013 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
    --
    1.7.9.2


    \
     
     \ /
      Last update: 2012-07-23 16:21    [W:4.767 / U:0.196 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site