Micron 7450 SSD only works with block sizes >= 256K?
rcpao opened this issue · comments
I added added 256K and 512K block sizes to the list in 'ezfio+256K+512K.py':
# diff ezfio.py ezfio+256K+512K.py
951c951
< bslist = (512, 1024, 2048, 4096, 8192, 16384, 32768, 65536, 131072)
---
> bslist = (512, 1024, 2048, 4096, 8192, 16384, 32768, 65536, 131072, 262144, 524288)
Both drives report 4096 (4K) block size in Linux:
# blockdev --getbsz /dev/nvme0n1
4096
# blockdev --getbsz /dev/nvme1n1
4096
# blockdev --getsize64 /dev/nvme0n1
15362991415296
# blockdev --getsize64 /dev/nvme1n1
1920383410176
This is a Micron 7450 which ezfio only starts working at 256K block size:
# ./ezfio+256K+512K.py -d /dev/nvme1n1 -u 1 --yes
***************************************************************************************************
ezFio test parameters:
Drive: /dev/nvme1n1
Model: Micron_7450_MTFDKBG1T9TFR
Serial: 22253C1BD8D3
AvailCapacity: 1788 GiB
TestedCapacity: 17 GiB
TestedOffset: 0 GiB
CPU: Intel Xeon Platinum 8452Y
Cores: 72
Frequency: 2000
FIO Version: fio-3.28
Test Description BW(MB/s) IOPS Lat(us)
----------------------------------------------------------------------- -------- --------- --------
---Sequential Preconditioning---
Sequential Preconditioning Pass 1 DONE DONE DONE
Sequential Preconditioning Pass 2 DONE DONE DONE
---Sustained Multi-Threaded Sequential Read Tests by Block Size---
Sustained Multi-Threaded Sequential Read Tests by Block Size, BS=512 0.00 0 0.0
Sustained Multi-Threaded Sequential Read Tests by Block Size, BS=1024 0.00 0 0.0
Sustained Multi-Threaded Sequential Read Tests by Block Size, BS=2048 0.00 0 0.0
Sustained Multi-Threaded Sequential Read Tests by Block Size, BS=4096 0.00 0 0.0
Sustained Multi-Threaded Sequential Read Tests by Block Size, BS=8192 0.00 0 0.0
Sustained Multi-Threaded Sequential Read Tests by Block Size, BS=16384 0.00 0 0.0
Sustained Multi-Threaded Sequential Read Tests by Block Size, BS=32768 0.00 0 0.0
Sustained Multi-Threaded Sequential Read Tests by Block Size, BS=65536 0.00 0 0.0
Sustained Multi-Threaded Sequential Read Tests by Block Size, BS=131072 0.00 0 0.0
Sustained Multi-Threaded Sequential Read Tests by Block Size, BS=262144 4,920.92 19,684 13004.5
Sustained Multi-Threaded Sequential Read Tests by Block Size, BS=524288 4,921.25 9,843 26007.2
...
This is a normal working 4Kn drive:
# ./ezfio+256K+512K.py -d /dev/nvme0n1 -u 1 --yes
***************************************************************************************************
ezFio test parameters:
Drive: /dev/nvme0n1
Model: SVU2Q15T4M1M1A41
Serial: SH234601357
AvailCapacity: 14307 GiB
TestedCapacity: 143 GiB
TestedOffset: 0 GiB
CPU: Intel Xeon Platinum 8452Y
Cores: 72
Frequency: 2000
FIO Version: fio-3.28
Test Description BW(MB/s) IOPS Lat(us)
----------------------------------------------------------------------- -------- --------- --------
---Sequential Preconditioning---
Sequential Preconditioning Pass 1 DONE DONE DONE
Sequential Preconditioning Pass 2 DONE DONE DONE
---Sustained Multi-Threaded Sequential Read Tests by Block Size---
Sustained Multi-Threaded Sequential Read Tests by Block Size, BS=512 0.00 0 0.0
Sustained Multi-Threaded Sequential Read Tests by Block Size, BS=1024 0.00 0 0.0
Sustained Multi-Threaded Sequential Read Tests by Block Size, BS=2048 0.00 0 0.0
Sustained Multi-Threaded Sequential Read Tests by Block Size, BS=4096 1,965.01 503,042 508.6
Sustained Multi-Threaded Sequential Read Tests by Block Size, BS=8192 3,632.61 464,974 550.3
Sustained Multi-Threaded Sequential Read Tests by Block Size, BS=16384 6,005.71 384,366 665.8
Sustained Multi-Threaded Sequential Read Tests by Block Size, BS=32768 10,319.91 330,237 774.9
Sustained Multi-Threaded Sequential Read Tests by Block Size, BS=65536 13,517.47 216,279 1183.4
Sustained Multi-Threaded Sequential Read Tests by Block Size, BS=131072 13,312.88 106,503 2403.3
Sustained Multi-Threaded Sequential Read Tests by Block Size, BS=262144 13,302.66 53,211 4810.5
Sustained Multi-Threaded Sequential Read Tests by Block Size, BS=524288 13,303.76 26,608 9620.6
...
Check the FIO .job
and .log
files for the non-run blocksizes. They should explain what's going on, and point to a solution.
From details_1920GB_72cores_2000MHz_nvme1n1_{redacted}_2024-05-08_01-41-15/TestSeq_w0_bs512_threads1_iodepth256_nvme1n1.out:
[STDOUT]
Test not run because block size 512 below iominsize 262144
...
$ sudo blockdev --getiomin /dev/nvme0n1
4096
$ sudo blockdev --getiomin /dev/nvme1n1
262144
which ends up being a duplicate of #25
Thank you Earle!