• Wu Fengguang's avatar
    writeback: double the dirty thresholds · 1b5e62b4
    Wu Fengguang authored
    Enlarge default dirty ratios from 5/10 to 10/20.  This fixes [Bug
    #12809] iozone regression with 2.6.29-rc6.
    
    The iozone benchmarks are performed on a 1200M file, with 8GB ram.
    
      iozone -i 0 -i 1 -i 2 -i 3 -i 4 -r 4k -s 64k -s 512m -s 1200m -b tmp.xls
      iozone -B -r 4k -s 64k -s 512m -s 1200m -b tmp.xls
    
    The performance regression is triggered by commit 1cf6e7d8(mm: task
    dirty accounting fix), which makes more correct/thorough dirty
    accounting.
    
    The default 5/10 dirty ratios were picked (a) with the old dirty logic
    and (b) largely at random and (c) designed to be aggressive.  In
    particular, that (a) means that having fixed some of the dirty
    accounting, maybe the real bug is now that it was always too aggressive,
    just hidden by an accounting issue.
    
    The enlarged 10/20 dirty ratios are just about enough to fix the regression.
    
    [ We will have to look at how this affects the old fsync() latency issue,
      but that probably will need independent work.  - Linus ]
    
    Cc: Nick Piggin <npiggin@suse.de>
    Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
    Reported-by: default avatar"Lin, Ming M" <ming.m.lin@intel.com>
    Tested-by: default avatar"Lin, Ming M" <ming.m.lin@intel.com>
    Signed-off-by: default avatarWu Fengguang <fengguang.wu@intel.com>
    Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
    1b5e62b4
page-writeback.c 39.5 KB