On 2/13/24 12:45 PM, Amir Goldstein wrote: > Jens, > > If you feel like it, you can see if this branch further improves your > workloads: > > https://github.com/amir73il/linux/commits/fsnotify-perf/ Baseline is current -git with changes I have for 6.9, so not with the previous patch. 4 optanes, usually random reads, and being run on a dual socket Intel(R) Xeon(R) Platinum 8458P CPU @ 2.7GHz. IOPS=16.20M, BW=7.91GiB/s, IOS/call=32/31 IOPS=16.20M, BW=7.91GiB/s, IOS/call=32/32 IOPS=16.20M, BW=7.91GiB/s, IOS/call=32/31 and in perf profile, we see: + 3.16% io_uring [kernel.kallsyms] [k] fsnotify + 2.04% io_uring [kernel.kallsyms] [k] __fsnotify_parent with this branch pulled in: IOPS=17.44M, BW=8.52GiB/s, IOS/call=32/31 IOPS=17.45M, BW=8.52GiB/s, IOS/call=32/31 IOPS=17.45M, BW=8.52GiB/s, IOS/call=32/31 and perf diff shows: 2.04% -1.15% [kernel.kallsyms] [k] __fsnotify_parent 3.16% [kernel.kallsyms] [k] fsnotify with a big reduction for __fsnotify_parent() and fsnotify() being totally gone. In absolute terms, this is all we see in perf profile with the patch: + 0.89% io_uring [kernel.kallsyms] [k] __fsnotify_parent iow, we went from over 5% of added overhead to less than 1%. -- Jens Axboe