On Fri, Jan 24, 2025 at 12:00 AM Anton Gavriliuk <antosha20xx@xxxxxxxxx> wrote: > > > We need major work to make it faster so that we can keep up with > > the speed of modern SSDs. > > Glad to know that this in your roadmap. > This is very important for storage server solutions, when you can add > ten's NVMe SSDs Gen 4/5 in 2U server. > I'm not a developer, but I can assist you in the testing as much as required. > > > Could you please do a perf-record with '-g' so that we can see > > which call paths hit the lock contention? This will help us > > understand whether Shushu's bitmap optimization can help. > > default raid5 build performance > > [root@memverge2 ~]# cat /proc/mdstat > Personalities : [raid6] [raid5] [raid4] > md0 : active raid5 nvme0n1[4] nvme2n1[2] nvme3n1[1] nvme4n1[0] > 4688044032 blocks super 1.2 level 5, 512k chunk, algorithm 2 [4/3] [UUU_] > [>....................] recovery = 0.3% (5601408/1562681344) > finish=125.0min speed=207459K/sec > bitmap: 0/12 pages [0KB], 65536KB chunk > > after set > > [root@memverge2 md]# echo 8 > group_thread_cnt Yes, group_thread_cnt sometimes (usually?) causes more lock contention and lower performance. > [root@memverge2 md]# echo 3600000 > sync_speed_max > > [root@memverge2 ~]# cat /proc/mdstat > Personalities : [raid6] [raid5] [raid4] > md0 : active raid5 nvme0n1[4] nvme2n1[2] nvme3n1[1] nvme4n1[0] > 4688044032 blocks super 1.2 level 5, 512k chunk, algorithm 2 [4/3] [UUU_] > [=>...................] recovery = 7.9% (124671408/1562681344) > finish=16.6min speed=1435737K/sec > bitmap: 0/12 pages [0KB], 65536KB chunk > > perf.data.gz attached. Could you please run perf-report on the perf.data? I won't be able to see all the symbols without your kernel. Thanks, Song