On Thu, Aug 29, 2019 at 01:23:10AM -0700, Christoph Hellwig wrote: > On Thu, Aug 29, 2019 at 04:30:42PM +1000, Dave Chinner wrote: > > create time(sec) / rate (files/s) > > File count vanilla Prev commit Patched > > 10k 0.41 / 24.3k 0.42 / 23.8k 0.41 / 24.3k > > 20k 0.74 / 27.0k 0.76 / 26.3k 0.75 / 26.7k > > 100k 3.81 / 26.4k 3.47 / 28.8k 3.27 / 30.6k > > 200k 8.58 / 23.3k 7.19 / 27.8k 6.71 / 29.8k > > 1M 85.69 / 11.7k 48.53 / 20.6k 37.67 / 26.5k > > 2M 280.31 / 7.1k 130.14 / 15.3k 79.55 / 25.2k > > 10M 3913.26 / 2.5k 552.89 / 18.1k > > Impressive! Yeah, i think the drop-off in performance at 10M inodes is caused by running out of RAM at about 6M inodes, and so there's extra CPU time spent in direct memory reclaim after than so the single threaded create performance is lower from as a result. > > Signed-Off-By: Dave Chinner <dchinner@xxxxxxxxxx> > > FYI, the Off here should be all lower case. Patch 2 actually has the > same issue, but I only noticed it here. Yeah, 3 of 5 patches are like that. No idea how - I use macros for all these sobs and rvbs and they all use lower case.... > > @@ -1781,6 +1782,9 @@ xfs_dir2_node_find_freeblk( > > */ > > ifbno = fblk->blkno; > > fbno = ifbno; > > + xfs_trans_brelse(tp, fbp); > > + fbp = NULL; > > + fblk->bp = NULL; > > Hmm. Doesn't this actually belong into the previous patch? Yup, I'll move them. -Dave. -- Dave Chinner david@xxxxxxxxxxxxx