《PCIe 4.0 SAS+NVMe RAID/HBA卡:最高读IOPS 300万、写24万》
最近,有不止一位读者朋友希望我分享NVMe RAID卡的性能表现。记得在5年前,我写过一篇《存储极客:做事器SSD RAID性能速查手册》,当时还是SAS和SATA SSD做阵列,而我当时在文章末端写了下面这句:

韶光过得真快啊。当年还是利用LSISAS3108芯片的Dell H730P(PERC 9系列)RAID卡,中间隔了一代H740P(LSI3508芯片,PERC 10系列),如今已经推出了Broadcom SAS3916芯片(PCIe 4.0)的PERC 11 RAID卡。虽然芯片名字还带“SAS”,但已经是Dell第一代支持NVMe SSD的RAID卡了。

本文引用的测试数据来自Principled Technologies的报告《Accelerate I/O with NVMe drives on the new Dell EMCPowerEdge R650 server》,结尾处我会给出链接。
测试平台:3rd Xeon Scalable PowerEdge R650做事器
上面图表是比拟平台,左边是Dell R640做事器+ H730P Mini RAID卡,右边则是R650+ H755N Front(前置)RAID卡。除此之外,影响性能的紧张便是SSD盘——老平台上利用了10块Intel D3-S4510 1.92TB SATA;新平台没有写SSD制造商(AG代表随机发货的意思),可以看出是8块企业级NVMe MU(稠浊用场,写表现比读密集型好)U.2 SSD,容量为3.2TB。
测试操作系统为RedHat企业版Linux8.3。
PERC H755N front NVMe这款RAID卡我之前大略先容过;而在上一篇《PowerEdge 15G做事器的风冷散热“新花样”》中,我还提到了它的兄弟型号PERC H755 front SAS,如下图:
这两款前置RAID卡的紧张差异便是分别支持NVMe 和SAS驱动器,在机箱内固定的位置都相同,就在热插拔背板的后面。
上图是Fio的测试参数。针对各种随机/顺序、读/写负载,结合设置不同的线程数和行列步队深度,以只管即便压测出RAID卡的最大性能。
先不考虑RAID的写惩罚,64T x 64Q并发分摊到8个SSD上,每块NVMe盘的行列步队深度就有512。而传统RAID 10/5/6对应的随机写惩罚为2/4/6倍,以是昔时夜家不才文中看到延时数字时就不应意外了。
IOPS:随机读350万、随机写91万(RAID 10)
首先看RAID 10测试结果,PowerEdge R650即代表PERC H755N RAID卡+NVMe SSD;R640代表H730P RAID卡+SATA SSD。
首先是4KB随机读,新的NVMe RAID卡超过了355万IOPS,比之前Broadcom 3916芯片宣扬的3百万(如下图)还要高;而老款的H730P+ SATA SSD只有50万。4KB随机写,PERC H755N也达到了917,000 IOPS。
理论上RAID 10的写性能可以达到读的一半,不过SSD的写本身就比读慢,以是实际上不是那么大略。比如我经历过HDD机器盘的时期,IOPS瓶颈还远没有到达RAID卡;而现在无论是SATA/SAS还是NVMe SSD都要另行剖析了。5年前那篇中我就提到过,LSI 3108芯片的H730P RAID卡,RAID 10随机写IOPS也只能达到10万旁边(RAID5随机写最大约4-5万),这是当年主控芯片的限定。
参考Intel SSD P4610的22万随机写性能,8个NVMe SSD RAID 10测到917,000 IOPS已经不错了。
8KB稠浊随机读写,H755N NVMe RAID在100-110万IOPS之间,我认为这个水平该当知足绝大多数单机运用了。
至于大数据块顺序读写性能,我习气去看带宽(MB/s)而不是IOPS,咱们可以稍后谈论。接下来先看RAID 5/6的随机IOPS。
如上图,H755N + NVMe SSD的RAID 5/6随机读IOPS,与前面的RAID 10非常靠近,都在350万IOPS以上。RAID 6随机写IOPS 198,000,靠近20万了;RAID 5随机写186,000稍有点意外,比之前Broadcom公布的芯片最大性能偏低些。也可能用更多数量的盘可以达到25万。
注:据理解下一代NVMeRAID卡,随机写IOPS还会有数倍提升。
比较之下,H730P RAID卡的随机写IOPS有点不正常,不用除是测试中S4510 SSD处于GC垃圾回收状态而性能偏低。
NVMe RAID的8KB随机读IOPS险些便是4KB的一半,由于此时换算成带宽已经超过14GB/s,靠近PCIe 4.0 x8接口的限定了。
8KB稠浊随机读写,NVMe RAID 5和6分别在50万和40万IOPS旁边。
带宽和延时:彷佛缺了点啥?
单位:MB/s
位于这个截图上方的表格,是RAID 10测试带宽比拟。我紧张看顺序写那一项,H755N NVMe SSD RAID的5,908 MB/s达到了老款H730P + SATA SSD的靠近3倍。当然这里面有Intel S4510 SATA接口的限定,单盘写带宽才510MB/s,10块盘RAID 10写入理论上也不可能超过2.5GB/s。
往下看是RAID6和5的带宽性能,这份报告中只给出了64KB顺序读而没有顺序写,略显遗憾。NVMe SSD RAID 5和6都能达到14,800 MB/s,相称于SATA RAID的3倍多,而后者可能还是有点受限于单个SSD接口带宽。
单位:ms(毫秒),本次先容的Fio测试不完备代表示实运用
再来看看延时指标。个中RAID 5和6的4KB随机写在所有项目中显得最高,而实际上RAID 10随机写延时也偏高。
首先,这与NAND闪存SSD自身的特性干系,稳态写入性能和延时都比读要差。
上图引用自我4年前做的《Intel Optane P4800X评测(3):Windows绑核优化篇》,可以看到当年性能精良的Intel P3700在并发8时达到最高写IOPS 18万,而后并发再提高延时也会线性增加。
上文中我给大家打过“预防针”,因此我们不要一下被10ms、100ms的数字吓住。如果我来出这份测试报告的话,会把前面列出过的线程数和行列步队深度一起放在上面表格里作参考。由于这个延时是压测到最高性能时记录的,如果我们测试job1/QD1也不可能这么高。
即便如此,我还是看到了NVMe SSD RAID比以前SATA RAID的“巨大”提升,只管个中有一部分单盘性能的成分,但H755N RAID卡的表现该当说是不错的。
当然,如果我们看随机稠浊读写延时,最新的RAID卡还是无法与当今前辈的全闪存阵列(1ms以内)比较。但我们别忘了AFA阵列掌握器的处理性能、缓存和功耗有多高;RAID卡才8GB Cache,只有15W功耗而已。其余一台阵列卖多少钱?哀求马儿少吃草,同时又要跑最快是不现实的:)
完全的测试配置和步骤参考
点开后可放大查看
我想肯定Principled Technologies测试报告的一点——会列出完全的测试环境配置步骤,以及测试工具的命令步骤。比如上图中的“blk_mqscsi_mod”,就让我想起5年前写过的《打破百万IOPS:blk-mq开释SCSI性能》。
更多细节我就不在此都粘贴过来了,大家可以参考报告原文档。以上信息不仅使测试报告更加客不雅观(由于各项结果按照同样配置和操作要能复现),同时对技能爱好者们学习也有帮助。
PERC 11 RAID卡和PowerEdge 15G做事器
末了,我还是把上表列出来给大家参考一下。本文测试谈论的RAID卡是H755N front NVMe,标准PCIe扩展卡形态的PERC H755 adapter(如下图)可以达到同样的性能,并同时兼容SAS/SATA盘。
PowerEdge R650做事器在这里就不多谈了。之前《冷板式液冷标准化:Power Edge 15G做事器散热杂谈》是环绕2U机型R750来写的,1U的R650同样支持液冷作为标准选项。
参考资料《Accelerate I/O with NVMe drives on the new Dell EMC PowerEdge R650 server》
https://www.principledtechnologies.com/Dell/PowerEdge-R650-vs-previous-generation-IOPS-0321.pdf
https://www.principledtechnologies.com/Dell/PowerEdge-R650-vs-previous-generation-IOPS-science-0321.pdf
《Dell Technologies PowerEdge RAID 掌握器 11用户指南 - PERC H755 适配器、H755 前置 SAS 和 H755N 前置 NVMe》
https://dl.dell.com/topicspdf/perc11_ug_zh-cn.pdf
注:本文只代表作者个人不雅观点,与任何组织机构无关,如有缺点和不敷之处欢迎在留言中批评示正。如果您想在这个"大众号上分享自己的技能干货,也欢迎联系我:)
尊重知识,转载时请保留全文。感谢您的阅读和支持!










