fio - тестирование скорости дисковой подсистемы
Тут неплохой список тестов: https://docs.oracle.com/en-us/iaas/Content/Block/References/samplefiocommandslinux.htm
Вот пример random r/w iops на десктопном Toshiba HDD:
iops-test-job: (groupid=0, jobs=4): err= 0: pid=251421: Wed Jul 17 10:37:16 2024
read: IOPS=76, BW=307KiB/s (314kB/s)(36.1MiB/120567msec)
slat (usec): min=3, max=1056.9k, avg=25388.41, stdev=70969.08
clat (msec): min=285, max=10659, avg=6440.46, stdev=987.92
lat (msec): min=500, max=10763, avg=6465.85, stdev=990.85
clat percentiles (msec):
| 1.00th=[ 1653], 5.00th=[ 5671], 10.00th=[ 6007], 20.00th=[ 6141],
| 30.00th=[ 6275], 40.00th=[ 6342], 50.00th=[ 6477], 60.00th=[ 6544],
| 70.00th=[ 6678], 80.00th=[ 6812], 90.00th=[ 7148], 95.00th=[ 7819],
| 99.00th=[ 8926], 99.50th=[ 9060], 99.90th=[ 9866], 99.95th=[10268],
| 99.99th=[10671]
bw ( KiB/s): min= 40, max= 608, per=100.00%, avg=307.70, stdev=26.41, samples=907
iops : min= 10, max= 152, avg=76.92, stdev= 6.60, samples=907
write: IOPS=79, BW=319KiB/s (326kB/s)(37.5MiB/120567msec); 0 zone resets
slat (usec): min=3, max=975286, avg=25577.27, stdev=70511.46
clat (msec): min=469, max=9979, avg=6323.55, stdev=931.04
lat (msec): min=500, max=9979, avg=6349.13, stdev=933.87
clat percentiles (msec):
| 1.00th=[ 1569], 5.00th=[ 5604], 10.00th=[ 5940], 20.00th=[ 6074],
| 30.00th=[ 6208], 40.00th=[ 6275], 50.00th=[ 6342], 60.00th=[ 6409],
| 70.00th=[ 6544], 80.00th=[ 6611], 90.00th=[ 6879], 95.00th=[ 7684],
| 99.00th=[ 8658], 99.50th=[ 8792], 99.90th=[ 9194], 99.95th=[ 9597],
| 99.99th=[10000]
bw ( KiB/s): min= 64, max= 632, per=100.00%, avg=320.56, stdev=26.98, samples=909
iops : min= 16, max= 158, avg=80.14, stdev= 6.74, samples=909
lat (msec) : 500=0.02%, 750=0.25%, 1000=0.26%, 2000=0.76%, >=2000=98.71%
cpu : usr=0.03%, sys=0.04%, ctx=11061, majf=0, minf=43
IO depths : 1=0.1%, 2=0.1%, 4=0.1%, 8=0.2%, 16=0.3%, 32=0.7%, >=64=98.7%
submit : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%, >=64=0.0%
complete : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%, >=64=0.1%
issued rwts: total=9243,9607,0,0 short=0,0,0,0 dropped=0,0,0,0
latency : target=0, window=0, percentile=100.00%, depth=256
Run status group 0 (all jobs):
READ: bw=307KiB/s (314kB/s), 307KiB/s-307KiB/s (314kB/s-314kB/s), io=36.1MiB (37.9MB), run=120567-120567msec
WRITE: bw=319KiB/s (326kB/s), 319KiB/s-319KiB/s (326kB/s-326kB/s), io=37.5MiB (39.3MB), run=120567-120567msec
Disk stats (read/write):
sda: ios=9257/9607, merge=0/0, ticks=4143068/3114506, in_queue=7257575, util=99.37%
Блоками по 512 картина еще унылее.
На 8к вцелом плюс-минус то же
iops-test-job: (groupid=0, jobs=4): err= 0: pid=251505: Wed Jul 17 10:42:18 2024
read: IOPS=77, BW=620KiB/s (635kB/s)(73.0MiB/120481msec)
slat (usec): min=3, max=387273, avg=25978.96, stdev=69175.81
clat (msec): min=320, max=8886, avg=6372.20, stdev=876.49
lat (msec): min=486, max=8886, avg=6398.18, stdev=878.93
clat percentiles (msec):
| 1.00th=[ 1552], 5.00th=[ 5738], 10.00th=[ 6007], 20.00th=[ 6208],
| 30.00th=[ 6275], 40.00th=[ 6409], 50.00th=[ 6477], 60.00th=[ 6544],
| 70.00th=[ 6678], 80.00th=[ 6812], 90.00th=[ 7013], 95.00th=[ 7215],
| 99.00th=[ 7684], 99.50th=[ 7819], 99.90th=[ 8288], 99.95th=[ 8423],
| 99.99th=[ 8926]
bw ( KiB/s): min= 176, max= 1344, per=99.33%, avg=616.50, stdev=53.06, samples=915
iops : min= 22, max= 168, avg=77.06, stdev= 6.63, samples=915
write: IOPS=80, BW=644KiB/s (660kB/s)(75.8MiB/120481msec); 0 zone resets
slat (usec): min=3, max=417654, avg=24495.72, stdev=67714.31
clat (msec): min=305, max=7858, avg=6266.56, stdev=797.47
lat (msec): min=486, max=7903, avg=6291.05, stdev=799.85
clat percentiles (msec):
| 1.00th=[ 1670], 5.00th=[ 5738], 10.00th=[ 5940], 20.00th=[ 6141],
| 30.00th=[ 6208], 40.00th=[ 6275], 50.00th=[ 6409], 60.00th=[ 6477],
| 70.00th=[ 6544], 80.00th=[ 6611], 90.00th=[ 6745], 95.00th=[ 6879],
| 99.00th=[ 7215], 99.50th=[ 7416], 99.90th=[ 7752], 99.95th=[ 7752],
| 99.99th=[ 7886]
bw ( KiB/s): min= 96, max= 1264, per=99.48%, avg=641.88, stdev=54.29, samples=918
iops : min= 12, max= 158, avg=80.24, stdev= 6.79, samples=918
lat (msec) : 500=0.06%, 750=0.25%, 1000=0.17%, 2000=0.88%, >=2000=98.63%
cpu : usr=0.03%, sys=0.04%, ctx=11609, majf=0, minf=44
IO depths : 1=0.1%, 2=0.1%, 4=0.1%, 8=0.2%, 16=0.3%, 32=0.7%, >=64=98.7%
submit : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%, >=64=0.0%
complete : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%, >=64=0.1%
issued rwts: total=9340,9704,0,0 short=0,0,0,0 dropped=0,0,0,0
latency : target=0, window=0, percentile=100.00%, depth=256
Run status group 0 (all jobs):
READ: bw=620KiB/s (635kB/s), 620KiB/s-620KiB/s (635kB/s-635kB/s), io=73.0MiB (76.5MB), run=120481-120481msec
WRITE: bw=644KiB/s (660kB/s), 644KiB/s-644KiB/s (660kB/s-660kB/s), io=75.8MiB (79.5MB), run=120481-120481msec
Disk stats (read/write):
sda: ios=9328/9704, merge=0/0, ticks=4175537/3088888, in_queue=7264425, util=99.67%
Иопсы те же, но скорость выросла.