如何最大化 nvme raid0(md) 性能(在 Linux 中)?

如何最大化 nvme raid0(md) 性能(在 Linux 中)?

Nvme raid0 读取(和写入)性能有时比单个底层驱动器的性能差。

hdparm -t /dev/md0:

Timing buffered disk reads: 7054 MB in  3.00       seconds = 2350.46 MB/sec

hdparm -t /dev/nvme0n1:

Timing buffered disk reads: 7160 MB in  3.00    seconds = 2386.32 MB/sec

这是数据中心托管的裸机单元,驱动器和服务器经过适当冷却,因此不会因高温而出现热节流。
驱动器平均温度约为 45 C,如所示 nvme smart-log /dev/nvmeX
这些低阵列速度有问题,我想了解是什么问题。这些是完整规格:

Epyc 7502p [2nd gen Rome 32cores/64threads]  
128 GB DDR4 32x4 3200mhz   
3x 3.8 TB samsung nvme pcie3 enteprise SSDs   
Raid0 software created with mdadm   
xfs filesystem on top of md0 created with defaults 'mkfs.xfs /dev/md0' 
debian 10 64bit with latest updates and stock kernel (no tinkering)   

我做错了什么?我根本没做什么?我知道任何突袭在速度方面都会有收益递减,但这很糟糕。

附言:您认为该系统的 raid0 读取速度应该是多少?

答案1

迈克尔·汉普顿斯图卡正确:使用菲奥用于基准测试。例如:

fio --filename=/dev/md0 --direct=1 --rw=read --bs=64k --ioengine=libaio --iodepth=64 --runtime=120 --numjobs=4 --time_based --group_reporting --name=seq_read

相关内容