[raid5] cf170f3fa45: +4.8% vmstat.io.bo
From: Jet Chen
Date: Sat Jun 07 2014 - 02:53:25 EST
Hi Eivind,
FYI, we noticed the below changes on
git://neil.brown.name/md for-next
commit cf170f3fa451350e431314e1a0a52014fda4b2d6 ("raid5: avoid release list until last reference of the stripe")
test case: lkp-st02/dd-write/11HDD-RAID5-cfq-xfs-10dd
8b32bf5e37328c0 cf170f3fa451350e431314e1a
--------------- -------------------------
486996 ~ 0% +4.8% 510428 ~ 0% TOTAL vmstat.io.bo
17643 ~ 1% -17.3% 14599 ~ 0% TOTAL vmstat.system.in
11633 ~ 4% -56.7% 5039 ~ 0% TOTAL vmstat.system.cs
109 ~ 1% +6.5% 116 ~ 1% TOTAL iostat.sdb.rrqm/s
109 ~ 2% +5.1% 114 ~ 1% TOTAL iostat.sdc.rrqm/s
110 ~ 2% +5.5% 117 ~ 0% TOTAL iostat.sdj.rrqm/s
12077 ~ 0% +4.8% 12660 ~ 0% TOTAL iostat.sde.wrqm/s
48775 ~ 0% +4.8% 51125 ~ 0% TOTAL iostat.sde.wkB/s
12077 ~ 0% +4.8% 12659 ~ 0% TOTAL iostat.sdb.wrqm/s
12076 ~ 0% +4.8% 12659 ~ 0% TOTAL iostat.sdd.wrqm/s
12077 ~ 0% +4.8% 12660 ~ 0% TOTAL iostat.sdf.wrqm/s
48775 ~ 0% +4.8% 51121 ~ 0% TOTAL iostat.sdb.wkB/s
12078 ~ 0% +4.8% 12659 ~ 0% TOTAL iostat.sdj.wrqm/s
12078 ~ 0% +4.8% 12660 ~ 0% TOTAL iostat.sdi.wrqm/s
12076 ~ 0% +4.8% 12658 ~ 0% TOTAL iostat.sdg.wrqm/s
48774 ~ 0% +4.8% 51122 ~ 0% TOTAL iostat.sdd.wkB/s
48776 ~ 0% +4.8% 51128 ~ 0% TOTAL iostat.sdf.wkB/s
48780 ~ 0% +4.8% 51121 ~ 0% TOTAL iostat.sdj.wkB/s
48779 ~ 0% +4.8% 51128 ~ 0% TOTAL iostat.sdi.wkB/s
48773 ~ 0% +4.8% 51119 ~ 0% TOTAL iostat.sdg.wkB/s
486971 ~ 0% +4.8% 510409 ~ 0% TOTAL iostat.md0.wkB/s
12076 ~ 0% +4.8% 12657 ~ 0% TOTAL iostat.sdc.wrqm/s
12077 ~ 0% +4.8% 12659 ~ 0% TOTAL iostat.sdh.wrqm/s
1910 ~ 0% +4.8% 2001 ~ 0% TOTAL iostat.md0.w/s
110 ~ 2% +6.5% 117 ~ 1% TOTAL iostat.sdk.rrqm/s
12077 ~ 0% +4.8% 12659 ~ 0% TOTAL iostat.sdk.wrqm/s
48772 ~ 0% +4.8% 51115 ~ 0% TOTAL iostat.sdc.wkB/s
48776 ~ 0% +4.8% 51121 ~ 0% TOTAL iostat.sdh.wkB/s
48777 ~ 0% +4.8% 51121 ~ 0% TOTAL iostat.sdk.wkB/s
109 ~ 2% +3.3% 113 ~ 1% TOTAL iostat.sde.rrqm/s
4.28e+09 ~ 0% -4.1% 4.104e+09 ~ 0% TOTAL perf-stat.cache-misses
8.654e+10 ~ 0% +4.7% 9.058e+10 ~ 0% TOTAL perf-stat.L1-dcache-store-misses
3.549e+09 ~ 1% +3.7% 3.682e+09 ~ 0% TOTAL perf-stat.L1-dcache-prefetches
6.764e+11 ~ 0% +3.7% 7.011e+11 ~ 0% TOTAL perf-stat.dTLB-stores
6.759e+11 ~ 0% +3.7% 7.011e+11 ~ 0% TOTAL perf-stat.L1-dcache-stores
4.731e+10 ~ 0% +3.6% 4.903e+10 ~ 0% TOTAL perf-stat.L1-dcache-load-misses
3.017e+12 ~ 0% +3.5% 3.121e+12 ~ 0% TOTAL perf-stat.instructions
1.118e+12 ~ 0% +3.3% 1.156e+12 ~ 0% TOTAL perf-stat.dTLB-loads
1.117e+12 ~ 0% +3.2% 1.152e+12 ~ 0% TOTAL perf-stat.L1-dcache-loads
3.022e+12 ~ 0% +3.2% 3.119e+12 ~ 0% TOTAL perf-stat.iTLB-loads
5.613e+11 ~ 0% +3.2% 5.794e+11 ~ 0% TOTAL perf-stat.branch-instructions
5.62e+11 ~ 0% +3.1% 5.793e+11 ~ 0% TOTAL perf-stat.branch-loads
1.343e+09 ~ 0% +2.6% 1.378e+09 ~ 0% TOTAL perf-stat.LLC-store-misses
2.073e+10 ~ 0% +2.9% 2.133e+10 ~ 1% TOTAL perf-stat.LLC-loads
4.854e+10 ~ 0% +1.6% 4.931e+10 ~ 0% TOTAL perf-stat.cache-references
1.167e+10 ~ 0% +1.4% 1.183e+10 ~ 0% TOTAL perf-stat.L1-icache-load-misses
7068624 ~ 4% -56.4% 3078966 ~ 0% TOTAL perf-stat.context-switches
2.214e+09 ~ 1% -7.8% 2.041e+09 ~ 1% TOTAL perf-stat.LLC-load-misses
131433 ~ 0% -18.9% 106597 ~ 1% TOTAL perf-stat.cpu-migrations
Legend:
~XX% - stddev percent
[+-]XX% - change percent
Disclaimer:
Results have been estimated based on internal Intel analysis and are provided
for informational purposes only. Any difference in system hardware or software
design or configuration may affect actual performance.
Thanks,
Jet
mdadm -q --create /dev/md0 --chunk=256 --level=raid5 --raid-devices=11 --force --assume-clean /dev/sdb1 /dev/sdc1 /dev/sdd1 /dev/sde1 /dev/sdf1 /dev/sdg1 /dev/sdh1 /dev/sdi1 /dev/sdj1 /dev/sdk1 /dev/sdl1
echo 1 > /sys/kernel/debug/tracing/events/writeback/balance_dirty_pages/enable
echo 1 > /sys/kernel/debug/tracing/events/writeback/bdi_dirty_ratelimit/enable
echo 1 > /sys/kernel/debug/tracing/events/writeback/global_dirty_state/enable
echo 1 > /sys/kernel/debug/tracing/events/writeback/writeback_single_inode/enable
mkfs -t xfs /dev/md0
mount -t xfs -o nobarrier,inode64 /dev/md0 /fs/md0
dd if=/dev/zero of=/fs/md0/zero-1 status=none &
dd if=/dev/zero of=/fs/md0/zero-2 status=none &
dd if=/dev/zero of=/fs/md0/zero-3 status=none &
dd if=/dev/zero of=/fs/md0/zero-4 status=none &
dd if=/dev/zero of=/fs/md0/zero-5 status=none &
dd if=/dev/zero of=/fs/md0/zero-6 status=none &
dd if=/dev/zero of=/fs/md0/zero-7 status=none &
dd if=/dev/zero of=/fs/md0/zero-8 status=none &
dd if=/dev/zero of=/fs/md0/zero-9 status=none &
dd if=/dev/zero of=/fs/md0/zero-10 status=none &
sleep 600
killall -9 dd