浪潮NVMe SSD的性能

存储技术

501人已加入

描述

浪潮SSD采用浪潮自主开发的固件架构和硬件设计,具备高性能、高耐用性、高可靠的特点,支持高速稳定的读写IOPS和带宽,极低的抖动延时,可应用于系统层、性能层、存储层,面向数据库、云服务、分布式存储、大数据等场景;Curve 是云原生计算基金会 (CNCF) Sandbox 项目之一,由网易主导开源,是一款高性能、易运维、云原生的分布式存储系统,由块存储 CurveBS 和文件系统 CurveFS 两部分组成( GitHub:https://github.com/opencurve/curve)。浪潮联手网易,基于 Curve 块存储v1.2.4版本,将Curve 部署在 NVMe磁盘上,对比 Ceph 在同样环境下的性能,让大家对 Curve 在 NVMe 环境下的性能有直观的了解。  

1. 测试环境配置

    本次测试采用浪潮服务器 SA5112M6,磁盘采用三个节点每个节点八块浪潮 INSPUR-NS8610G1U320 NVMe进行测试,此次采用的NVMe SSD具有极高的性能,产品4K随机写IOPS可达320K, 本次在加载业务的条件下实测单盘性能 4k 随机写 IOPS 为240k,512k 顺序写极限带宽 3440MiB/s。

7a2ebac4-124a-11ed-ba43-dac502259ad0.png

版本和软件配置信息:

7a6213e2-124a-11ed-ba43-dac502259ad0.png

2.测试工具及脚本

测试工具采用 FIO (官方仓库 axboe/fio①),测试脚本参考如下:

Curve块存储

7a7662ca-124a-11ed-ba43-dac502259ad0.jpg

Ceph

 

7a8797ca-124a-11ed-ba43-dac502259ad0.jpg

其中,Curve 端的测试采用Curve cbd engine,我们 fork 了axboe/fio 并对接 Curve client sdk 即 curve cbd engine,该仓库在 opencurve/fio②。

此外,Curve 块存储支持条带化卷,因此我们还测试了 Curve 使用条带情况下的性能,其中的条带卷参数和条带化卷创建命令如下:

curvecreate --filename /test0 --length 1024 --user test --stripeUnit 65536 --stripeCount 64

另外,对于单卷和多卷读的测试,在进行读之前,需要对卷进行一遍预写,将卷写满,否则测试数据将因为 client 直接返回 0 而导致性能不准,这一操作 Curve参考脚本如下:

sudo ./fio_--ioengine=cbd --cbd=/test0 --size=1024G --bs=1M --direct=1 --group_reporting--time_based --rw=write --iodepth=512 --numjobs=1 -name=fu

3.测试结果

单卷测试

单卷 4k 随机写测试:

7aa6735c-124a-11ed-ba43-dac502259ad0.png

7acfd6ca-124a-11ed-ba43-dac502259ad0.png

对比 Curve 与 Ceph的单卷小 IO随机写性能来看,Curve 的性能远优于于Ceph 的性能(QD256,达到约319%);

从 QD1 的时延来看 Curve 的单路时延仅 Ceph 的50%。

单卷 512k 随机写测试:

7af68aae-124a-11ed-ba43-dac502259ad0.png

7b231998-124a-11ed-ba43-dac502259ad0.png

Curve 在单卷大 IO 顺序写的场景下,具有和 Ceph 相当的性能;

特别地,当 Curve 采用条带化卷之后,可以显著的改善Curve大IO顺序写场景下的性能。

单卷 4k 随机读测试:

7b45d79e-124a-11ed-ba43-dac502259ad0.png

7bf6a704-124a-11ed-ba43-dac502259ad0.png

Curve相比于ceph在单卷小IO随机读的场景下,具有明显优于ceph的性能(QD256时,达到266%)。

单卷 512k 随机读测试:

7c12e13a-124a-11ed-ba43-dac502259ad0.png

7c39df74-124a-11ed-ba43-dac502259ad0.png

在单卷大IO顺序读的场景下,Curve与cpeh性能相当,同样时延条带化之后,Curve的大IO顺序读场景下的带宽有明显改善。

多卷测试

多卷 4k 随机写测试:

7c5792f8-124a-11ed-ba43-dac502259ad0.png

多卷 4k 随机读测试:

7c7edc46-124a-11ed-ba43-dac502259ad0.png

7c9ece3e-124a-11ed-ba43-dac502259ad0.png

从多卷小IO的随机读写测试来看:

小 IO 随机写 Ceph 比 Curve 先到达CPU 性能瓶颈,因此 Curve 更能发挥后端的性能,总体性能方面,IOPS 也比 Ceph 好约165%;

小 IO 随机读 Ceph 也比 Curve 先到达网卡的瓶颈,在对 Ceph 继续增加压力(jobs加到5)之后,两者后端性能相当,总的来说,Curve 的性能应当也是好于 Ceph。

多卷 512k 随机写测试:

7cbcee8c-124a-11ed-ba43-dac502259ad0.png

多卷 512k 顺序读测试:

7ccc1df8-124a-11ed-ba43-dac502259ad0.png

7cedeec4-124a-11ed-ba43-dac502259ad0.png

从多卷大IO的顺序读写来看,Curve 和Ceph 的性能基本相当。

4.后记

    上述测试中,无论是 Curve 还是 Ceph 均不能完全发挥 浪潮NVMe SSD的性能。目前 Ceph 已经支持使用 spdk 访问 NVMe SSD,性能也有较大提升。网易Curve 支持spdk 的版本正在开发中,待相关版本发布后,再与 Ceph 的 spdk 版本对比,敬请期待。  

      审核编辑:彭静

打开APP阅读更多精彩内容

电子工程师必装软件(附AD封装库

值得收藏!用过都说好!

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分