FYI, we noticed a -81.2% regression of aim7.jobs-per-min due to commit: commit b93f7712868648c0529eed6b568cea1493d3d9f9 ("f2fs: remove writepages lock") https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master in testcase: aim7 on test machine: 48 threads Ivytown Ivy Bridge-EP with 64G memory with following parameters: disk=4BRD_12G/fs=f2fs/load=600/md=RAID0/test=sync_disk_rw 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. Details are as below: --------------------------------------------------------------------------------------------------> To reproduce: git clone git://git.kernel.org/pub/scm/linux/kernel/git/wfg/lkp-tests.git cd lkp-tests bin/lkp install job.yaml # job file is attached in this email bin/lkp run job.yaml ========================================================================================= compiler/disk/fs/kconfig/load/md/rootfs/tbox_group/test/testcase: gcc-4.9/4BRD_12G/f2fs/x86_64-rhel/600/RAID0/debian-x86_64-2015-02-07.cgz/ivb44/sync_disk_rw/aim7 commit: 69e9e42744 ("f2fs: set flush_merge by default") b93f771286 ("f2fs: remove writepages lock") 69e9e4274450c778 b93f7712868648c0529eed6b56 ---------------- -------------------------- fail:runs %reproduction fail:runs | | | :4 50% 2:4 kmsg.Spurious_LAPIC_timer_interrupt_on_cpu %stddev %change %stddev \ | \ 17539 ± 1% -81.2% 3303 ± 0% aim7.jobs-per-min 205.35 ± 1% +430.8% 1089 ± 0% aim7.time.elapsed_time 205.35 ± 1% +430.8% 1089 ± 0% aim7.time.elapsed_time.max 19225140 ± 1% +13.7% 21864211 ± 0% aim7.time.involuntary_context_switches 76889 ± 3% +73.4% 133360 ± 6% aim7.time.minor_page_faults 1169 ± 0% +484.6% 6835 ± 0% aim7.time.system_time 7.04 ± 1% +421.8% 36.75 ± 1% aim7.time.user_time 43519877 ± 0% +633.9% 3.194e+08 ± 0% aim7.time.voluntary_context_switches aim7.jobs-per-min 20000 ++------------------------------------------------------------------+ | .*.. | 18000 *+*..*.*..* *.*.*..*. .*. .*.*.*.. .*..*.*..*.*.*..*. .*.*..*.* 16000 ++ *. *. * *. | | | 14000 ++ | 12000 ++ | | | 10000 ++ | 8000 ++ | O O O O O O O O O O O O O | 6000 ++ | 4000 ++ | | O O O O O O O O O O | 2000 ++------------------------------------------------------------------+ aim7.time.user_time 45 ++---------------------------------------------------------------------+ | O O | 40 ++ O O O O | 35 O+ O O O O O O O O O O O O O O O O | | | 30 ++ | | | 25 ++ | | | 20 ++ | 15 ++ | | | 10 ++ | *..*.*..*.*.. .*..*.*..*.*..*.*..*.*..*.*..* 5 ++-----------*-*--*-*--*-*--*-*--*--*-*--*-----------------------------+ aim7.time.system_time 7000 ++------------------------------O--O-O-O--O-O--O----O-O--------------+ | O | 6000 ++ | | | | | 5000 ++ | | | 4000 ++ | | | 3000 O+O O O O O O O O O O O O | | | | | 2000 ++ | *.*..*.*..*. .*.. .*..*.*..*.*..*. .*..*.*..*.*..*.*..*.*.. | 1000 ++----------*--*----*----------------*------------------------*-*--*-* aim7.time.elapsed_time 1200 ++-------------------------------------------------------------------+ 1100 ++ O O O O O O O O O | | O | 1000 ++ | 900 ++ | 800 ++ | 700 ++ | | | 600 ++ | 500 O+O O O O O O O O O O O O | 400 ++ | 300 ++ | | .*.. | 200 *+*..*.*..*.*..*.*..*.*..*.*..*.*..*.*.*..*.*..*.*..*.*..* *.*..*.* 100 ++-------------------------------------------------------------------+ aim7.time.elapsed_time.max 1200 ++-------------------------------------------------------------------+ 1100 ++ O O O O O O O O O | | O | 1000 ++ | 900 ++ | 800 ++ | 700 ++ | | | 600 ++ | 500 O+O O O O O O O O O O O O | 400 ++ | 300 ++ | | .*.. | 200 *+*..*.*..*.*..*.*..*.*..*.*..*.*..*.*.*..*.*..*.*..*.*..* *.*..*.* 100 ++-------------------------------------------------------------------+ aim7.time.voluntary_context_switches 3.5e+08 ++----------------------------------------------------------------+ O O O O O O O O O O O O O O O O O O O O O O O | 3e+08 ++ | | | 2.5e+08 ++ | | | 2e+08 ++ | | | 1.5e+08 ++ | | | 1e+08 ++ | | | 5e+07 *+*..*.*.*..*.*..*.*.*..*.*.*..*.*.*..*.*.*..*.*..*.*.*..*.*.*..*.* | | 0 ++----------------------------------------------------------------+ [*] bisect-good sample [O] bisect-bad sample Thanks, Xiaolong