We really appreciate it if you could share the vendor/model/capacity of your NVME to ODROID forum when your NVMe is not listed.

This is the list of tested M.2 NVMe SSD devices with ODROID-M1.

Vendor Model Capacity Benchmark
Acer AT500M 256/500GB click
XPG SX8200 1TB click
Crucial P1 3D NAND 1TB click
P2 SSD 512GB
2TB click
Phison PS5012-E12 128GB
PNY CS1031 512GB
CS3030 2TB click
Kingston SNVS500G 500GB click
A2000 250GB click
LEVEN JP600 256GB click
Samsung PM981 256GB click
PM981A 1TB click
PM9A1 512GB
SSD 970 EVO Plus 500GB click
2TB click
SSD 970 Pro 256GB click
SSD 980 500GB click
1TB click
SSD 980 Pro 156GB click
Teamgroup MP33 512GB click
MP34 4TB click
Western Digital SN550 500GB click
SN750 500GB click
SN850 1TB click

Note that PCIe Gen3 SSDs are needed to get the best performance with M1 due to RK3568's PCIe limitation being Gen3 two lanes only.
As such every Gen2 x4 SSD will only be able to establish a Gen2 x2 connection halfing its sequential transfer speeds as well as harming random I/O performance.

Actual Base Clock Speed : PCIe 3.0 (Gen3) = 8.0GHz, PCIe 2.0 (Gen2) = 5.0GHz .
Ideal Data Rate per lane : PCIe 3.0 = 1000MB/s, PCIe 2.0 = 500MB/s
PCIe 2.0 uses an 8b/10b encoding scheme
PCIe 3.0 uses an 128b/130b encoding scheme for faster data transfer rate

Please be aware of performing a storage benchmark could cause a data loss on a target storage, one must make sure data in the storage is backed up before start.

Installing performance test packages

sudo apt install fio iozone3

Performance test

Sequential read
sudo fio --filename=/dev/nvme0n1 --direct=1 --rw=read --bs=1024k --ioengine=libaio \
         --iodepth=64 --size=4G --runtime=10 --numjobs=4 --group_reporting \
         --name=fio-rand-read-sequential --eta-newline=1 --readonly | grep READ
Random read/write
sudo iozone -e -I -a -s 100M -r 4k -r 16k -r 512k -r 1024k -r 16384k -i 0 -i 1 -i 2
  • odroid-m1/hardware/nvme.txt
  • Last modified: 2023/10/31 01:13
  • by tobetter