Thanks for the report! On Tue, Nov 27, 2018 at 02:01:02PM +0800, kernel test robot wrote: > FYI, we noticed a -62.5% regression of will-it-scale.per_thread_ops due to > commit: > > > commit: 83b381078b5ecab098ebf6bc9548bb32af1dbf31 ("fs/locks: always > delete_block after waiting.") > https://git.kernel.org/cgit/linux/kernel/git/jlayton/linux.git locks-next > > in testcase: will-it-scale > on test machine: 88 threads Intel(R) Xeon(R) CPU E5-2699 v4 @ 2.20GHz with > 64G memory > with following parameters: > > nr_task: 16 > mode: thread > test: lock1
So I guess it's doing this, uncontended file lock/unlock?: https://github.com/antonblanchard/will-it-scale/blob/master/tests/lock1.c Each thread is repeatedly locking and unlocking a file that is only used by that thread. By the way, what's the X-axis on these graphs? (Or the y-axis, for that matter?) --b. > will-it-scale.per_thread_ops > > > > 450000 +-+----------------------------------------------------------------+ > > | | > > 400000 +-+ +..+.. .+..+.. .+..+..+...+..+..+.. +.. .+.. ..| > > 350000 +-+ .. +. +. .. +. +..+ | > > | + + + : | > > 300000 +-+ : : | > > 250000 +-+ : : | > > | : : | > > 200000 +-+ : : | > > 150000 +-+ : : | > > O O O O O O O O O O O O O O O O O :O: O O O O O > > 100000 +-+ : : | > > 50000 +-+ : : | > > | : | > > 0 +-+----------------------------------------------------------------+ > > > > > > > will-it-scale.workload > > > > 7e+06 +-+-----------------------------------------------------------------+ > > | +...+.. .+..+..+ + +.. | > > 6e+06 +-+ +..+.. .. .+..+..+. + + + .. ..| > > | .. + +. + + + + +..+ | > > 5e+06 +-++ + + : | > > | : : | > > 4e+06 +-+ : : | > > | : : | > > 3e+06 +-+ : : | > > | O O : : O O | > > 2e+06 O-+O O O O O O O O O O O O O O : O: O O O > > | : : | > > 1e+06 +-+ : : | > > | : | > > 0 +-+-----------------------------------------------------------------+ > > > > > > > will-it-scale.time.user_time > > > > 250 +-+-------------------------------------------------------------------+ > > | .+.. .+.. +.. | > > |.. +...+.. .+. .+...+..+..+. +.. +.. .. . ..| > > 200 +-+ .. +. +. . .. + +..+ | > > | + + + : | > > | : : | > > 150 +-+ : : | > > | : : | > > 100 +-+ : : | > > | O O : : | > > O O O O O O O O O O O O O O O :O: O O O O O > > 50 +-+ : : | > > | : : | > > | : | > > 0 +-+-------------------------------------------------------------------+ > > > > > > > will-it-scale.time.system_time > > > > 5000 +-+------------------------------------------------------------------+ > > 4500 O-+O..O..O...O..O..O..O..O..O..O...O..O..O..O..O..O O O...O..O..O..O > > | : : | > > 4000 +-+ : : | > > 3500 +-+ : : | > > | : : | > > 3000 +-+ : : | > > 2500 +-+ : : | > > 2000 +-+ : : | > > | : : | > > 1500 +-+ : : | > > 1000 +-+ : : | > > | : | > > 500 +-+ : | > > 0 +-+------------------------------------------------------------------+ > > > > > > [*] bisect-good sample > [O] bisect-bad sample