Whamcloud - gitweb
LU-18463 ptlrpc: removing cfs_flush_fput idle 73/57073/7
authorAlexander Boyko <alexander.boyko@hpe.com>
Wed, 6 Nov 2024 03:20:36 +0000 (22:20 -0500)
committerOleg Drokin <green@whamcloud.com>
Mon, 16 Dec 2024 08:03:31 +0000 (08:03 +0000)
commit6a3d7634a1fa0f7af14a8288cdd595bd6f8579eb
tree29517723c7b55f24a5195fcfc38d107f23ad5417
parent42eaefe0e3161266588909668032679f3c46c528
LU-18463 ptlrpc: removing cfs_flush_fput idle

mdtest performance degradations were observed for directory removes
of up to 28%. The cause is LU-16973.
The fix removes flushing from a ptlrpc path, and introduce a
work for osd ldiskfs. Let's flush files base on count. Also it
adds the sysfs file to set a descriptors count for flushing.
By default 5k files.

 echo 1000 > /sys/fs/lustre/osd-ldiskfs/flush_descriptors_cnt
 cat /sys/fs/lustre/osd-ldiskfs/flush_descriptors_cnt
 1000

mdtest results with this patch (5 iterations Mean op/s)
                    base     with a fix
MDT0
Directory creation  120447     111808
Directory stat      394309     388488
Directory removal   123516     169907
MDT1
Directory creation  123997     121788
Directory stat      403213     395777
Directory removal   116210     160593

HPE-bug-id: LUS-12373
Fixes: 2feb4a7bb0 ("LU-16973 ptlrpc: flush delayed file desc if idle")
Signed-off-by: Alexander Boyko <alexander.boyko@hpe.com>
Change-Id: I26c73f09f7c8045a26a7876317e07b4cd28bcee3
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57073
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Andrew Perepechko <andrew.perepechko@hpe.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
lustre/osd-ldiskfs/osd_handler.c
lustre/osd-ldiskfs/osd_internal.h
lustre/osd-ldiskfs/osd_io.c
lustre/ptlrpc/service.c