Details
-
Improvement
-
Resolution: Unresolved
-
Major
-
None
-
None
-
9223372036854775807
Description
Disk performance degrades, when new blocks get allocated near the end of the disk,
For example, the below are obdsurvey-results when mb_last_group is manually set to 0/75%/90% of max block group num before running the test:
3949.61 (0) vs 3677.15 (75%) vs 3133.43 (90%) [root@cslmo2305 ~]# rpm -qi lustre_ib | grep Version | dshbak -c ---------------- Version ---------------- 2.15.0.3_rc2_cray_165_g3355f27 [root@cslmo2305 ~]# echo 0 > /proc/fs/ldiskfs/md*/mb_last_group [root@cslmo2305 ~]# cat /proc/fs/ldiskfs/md*/mb_last_group 0 [root@cslmo2305 ~]# nobjlo=2 nobjhi=2 thrlo=1024 thrhi=1024 size=393216 rszlo=4096 rszhi=4096 tests_str="write read" obdfilter-survey | egrep -v "^done" 2>/dev/null Wed May 18 13:23:57 UTC 2022 Obdfilter-survey for case=disk from cslmo2305 ost 1 sz 402653184K rsz 4096K obj 2 thr 1024 write 3949.61 [1399.72, 4272.29] read 4451.99 [1679.81, 5986.40] /usr/bin/iokit-libecho: line 235: 69223 Killed remote_shell $host "vmstat 5 >> $host_vmstatf" &> /dev/null [root@cslmo2305 ~]# cat /proc/fs/ldiskfs/md*/mb_last_group 3565 [root@cslmo2305 ~]# echo 0 > /proc/fs/ldiskfs/md*/mb_last_group [root@cslmo2305 ~]# nobjlo=2 nobjhi=2 thrlo=1024 thrhi=1024 size=393216 rszlo=4096 rszhi=4096 tests_str="write read" obdfilter-survey | egrep -v "^done" 2>/dev/null Wed May 18 13:27:24 UTC 2022 Obdfilter-survey for case=disk from cslmo2305 ost 1 sz 402653184K rsz 4096K obj 2 thr 1024 write 3975.33 [1207.70, 4299.46] read 4517.36 [1623.78, 5675.05] /usr/bin/iokit-libecho: line 235: 76282 Killed remote_shell $host "vmstat 5 >> $host_vmstatf" &> /dev/null [root@cslmo2305 ~]# cat /proc/fs/ldiskfs/md*/mb_last_group 3590 [root@cslmo2305 ~]# echo 1040830 > /proc/fs/ldiskfs/md*/mb_last_group [root@cslmo2305 ~]# cat /proc/fs/ldiskfs/md*/mb_last_group 1040830 [root@cslmo2305 ~]# nobjlo=2 nobjhi=2 thrlo=1024 thrhi=1024 size=393216 rszlo=4096 rszhi=4096 tests_str="write read" obdfilter-survey | egrep -v "^done" 2>/dev/null Wed May 18 13:30:56 UTC 2022 Obdfilter-survey for case=disk from cslmo2305 ost 1 sz 402653184K rsz 4096K obj 2 thr 1024 write 3677.15 [2194.42, 3995.29] read 4819.83 [3596.32, 5391.15] /usr/bin/iokit-libecho: line 235: 82505 Killed remote_shell $host "vmstat 5 >> $host_vmstatf" &> /dev/null [root@cslmo2305 ~]# cat /proc/fs/ldiskfs/md*/mb_last_group 1044021 [root@cslmo2305 ~]# echo 1040830 > /proc/fs/ldiskfs/md*/mb_last_group [root@cslmo2305 ~]# cat /proc/fs/ldiskfs/md*/mb_last_group 1040830 [root@cslmo2305 ~]# nobjlo=2 nobjhi=2 thrlo=1024 thrhi=1024 size=393216 rszlo=4096 rszhi=4096 tests_str="write read" obdfilter-survey | egrep -v "^done" 2>/dev/null Wed May 18 13:34:34 UTC 2022 Obdfilter-survey for case=disk from cslmo2305 ost 1 sz 402653184K rsz 4096K obj 2 thr 1024 write 3666.51 [3231.40, 4047.68] read 4798.87 [3963.07, 5255.19] /usr/bin/iokit-libecho: line 235: 88607 Killed remote_shell $host "vmstat 5 >> $host_vmstatf" &> /dev/null [root@cslmo2305 ~]# cat /proc/fs/ldiskfs/md*/mb_last_group 1044030 [root@cslmo2305 ~]# echo 1248996 > /proc/fs/ldiskfs/md