存储评论网

今天快速,为明天做好准备:QSAN XN4226D 统一存储

企业版  ◇  企业存储

QSAN 自 2004 年以来一直致力于构建企业存储解决方案,而 XN4 系列正是其经验的体现。我们实验室中的 XN4226D 是一款 2U、26 盘位、全 NVMe 阵列,配备双主动控制器,可提供统一的块和文件存储的高可用性。QSM 4 软件添加了所需的数据服务,包括快照、复制选项、数据缩减和直观的管理体验。XN4 专为追求 NVMe 速度且不牺牲多协议灵活性的团队而设计,价格也非常实惠。

关键精华

  • 具有真正 HA 的统一块和文件。 双主动控制器和 QSM 4 通过一个平台为块和文件提供高可用性。
  • NVMe-oF 做得对。 完整的协议通过 TCP 和 RDMA 与 NVMe-oF 以及 iSCSI、光纤通道、NFS、SMB、FTP 和 WebDAV 一起传播。
  • 已证实的吞吐量。 我们测量了 TCP 的大型顺序读取速度高达 21.21 GB/s,以及 RDMA 的大型顺序写入速度高达 11.14 GB/s。
  • 专为现代管道而建。 2U 中有 26 个全 NVMe 托架,管理简单,I/O 选项可扩展至 100–200GbE,用于媒体、监控分析、VDI、数据库和 AI 推理。

该平台支持基于 TCP 和 RDMA 的 NVMe-oF,以及 iSCSI、光纤通道、NFS、SMB、FTP 和 WebDAV。我们还完成了一项 NVMe-oF 专项研究,比较了 TCP 和 RDMA 的行为和扩展性。在测试中,我们通过大量顺序读取将设备推向极限,实现了令人印象深刻的 21.21 GB/s 吞吐量。该系统的适用场景与原始数据同样重要。XN4226D 适用于混合环境,可将 VMware 或 Proxmox 与虚拟机、虚拟桌面基础架构 (VDI) 和数据库层相结合,以及创意文件服务、需要可预测 NVMe 路径的 AI 推理节点、媒体备份以及用于监控和传感器工作负载的高带宽数据采集。QSAN XN4226D 几乎适用于所有工作负载。

QSAN 注意到媒体制作(包括直播、重播选项、AI 视频增强和 OTT/边缘缓存)以及监控视频分析(例如智慧城市闭路电视监控、异常检测和实时重播)均取得了显著增长。理想情况下,100-200GbE 的吞吐量能够支持这些工作负载。

最终,其价值显而易见。您可以获得统一的高可用性、覆盖整个机箱的 NVMe,以及随着需求增长而高达 100GbE 或 32Gb 光纤通道的 I/O 选择。性能与许多一级阵列相当,同时许可仍然更易于获取,并且协议覆盖范围仍然广泛,涵盖 NVMe-oF、iSCSI、光纤通道、SMB 和 NFS。对于那些关注 InfiniBand 但预算受限的企业来说,QSAN 的以太网方案在 100 至 200GbE 规模的标准设备上提供接近 IB 的响应速度。

对于优先考虑实际应用结果的团队来说,QSAN 的长寿命、直观的软件和简洁的硬件设计使 XN4226D 成为可靠的全闪存主力。

QSAN XN4 硬件

QSAN XN4 系列存储阵列采用 26 托架、2U、19 英寸机架式服务器机箱,提供单控制器或双控制器选项,搭载 4 核或 8 核英特尔至强 CPU,可满足各种规模运营的冗余和性能需求。在 26 个托架全部安装完毕的情况下,单个 XN4 系列机箱可在 2.5 英寸 U.2/U.3 NVMe 固态硬盘上存储高达 798 TB 的数据。此外,还可以添加多达 20 个 SAS 连接的扩展单元,将阵列的总容量提升至 16.773 PB。

每个板载控制器配备一个 2.5 Gbps RJ45 以太网端口、四个 10 Gbps SFP+ 端口和两个 12 Gbps SAS 宽端口。此外,还提供 10Gbps RJ45、25Gbps SFP28 和 100Gbps QSFP 端口的升级选项。此外,还可以添加光纤通道支持,配备 16Gbps SFP+ 和 32Gbps SFP28 适配器。

下表比较了 XN4226D-4C 和 XN4226S-4C 存储系统的规格。它们是 4C 版本,根据型号设计为双活控制器或可升级的单控制器。对于需要更高处理能力的部署,我们还提供 8C 版本。

规格 XN4226D-4C XN4226S-4C
型号名称 XN4226D-4C XN4226S-4C
卓越 双活控制器 单一可升级控制器
中央处理器 Intel® Xeon® 四核处理器 × 2 英特尔® 至强® 四核
内存
预装内存模块 32GB DDR4 RDIMM 16GB DDR4 RDIMM
总内存插槽 16 8
内存可扩展至 2,048GB 1,024GB
驱动器托架 2.5英寸插槽×26 2.5英寸插槽×26
带扩展单元的最大驱动器托架 546 546
兼容驱动器类型 2.5英寸双端口 U.2 / U.3 NVMe SSD
2.5 英寸 SAS SSD(用于扩展单元)
3.5英寸SAS HDD(用于扩展单元)
2.5英寸单端口U.2/U.3 NVMe SSD
2.5 英寸 SAS SSD(用于扩展单元)
3.5英寸SAS HDD(用于扩展单元)
驱动接口 U.2 NVMe(PCIe 第四代)
SAS 12 Gb/s(用于扩展单元)
U.2 NVMe(PCIe 第四代)
SAS 12 Gb/s(用于扩展单元)
最大内部原始容量 798TB 798TB
最大原始容量及扩展 16,773TB 16,773TB
热插拔驱动器
连接端口
PCIe扩展 (Gen 4×8 插槽)× 4 (Gen 4×8 插槽)× 2
2.5 GbE RJ45 LAN 端口 2(船上) 1(船上)
10 GbE SFP+ LAN 端口 8(板载)/ 16(选配) 4(板载)/ 8(选配)
10 GbE RJ45 LAN 端口 16(选项) 8(选项)
25 GbE SFP28 LAN 端口 16(选项) 8(选项)
100 GbE QSFP LAN 端口 8(选项) 4(选项)
16 Gb SFP+ 光纤通道 16(选项) 8(选项)
32 Gb SFP28 光纤通道 16(选项) 8(选项)
扩展和外部端口
12 Gb/s SAS 宽端口 4(船上) 2(船上)
USB接口 1(前)/2(后) 1(前)/1(后)
其它 Console口×2,Service口×2 Console口×1,Service口×1
软件规格
存储操作系统 质量管理4 质量管理4
RAID类型 0 / 1 / 5 / 6 / 10 / 50 / 60 / 5EE / 6EE / 50EE / 60EE
存储效率 精简配置/压缩和重复数据删除(选项)
软件加速 SSD 缓存 / 自动分层 / RDMA
数据保护 快照/异步/同步(选项)
备份服务 Rsync / S3 备份 / 云备份 / XMirror* / Microsoft 365 电子邮件备份
安全性 SSL / SSH / iSCSI CHAP / ISE 和 SED / WORM / RBAC / Windows ACL / 防病毒
支持协议 CIFS / NFS / FTP / WebDAV / iSCSI / FCP / NVMe-oF
管理团队 Web UI / Windows AD / LDAP / RESTful API / SES / LCM
外观
尺寸(高×宽×深) 88×438×573mm 88×438×573mm
净重 19.6kg 16.5kg
毛重 28.6kg 25.5kg
其它
内存保护 缓存到闪存模块(内置)
系统风扇 8 件套 4 件套
电源单元 850 瓦 × 2(80 Plus 白金认证)
电源输入 100 – 240 伏交流电,50/60 赫兹
能量消耗 812 瓦 / 2,770 BTU
证书 CE/FCC/BSMI
标准保修 系统:5年|缓存到闪存模块:1年

QSAN XN4 功能

XN4 阵列标配支持高性能计算和高数据量 AI 模型所需的最新连接协议,包括通过 TCP 和 RDMA 服务的 NVMe over Fabrics (NVMe-oF)。此外,它还支持通过 iSCSI、NFS、FCP、CIFS/SMB、FTP 和 WebDAV 进行连接,使该阵列能够满足混合使用传统和前沿系统的数据中心的块存储和文件存储需求。

NVMe-oF的优势

虽然 iSCSI、NFS 和 FCP 等协议仍在企业存储应用中广泛使用,但 NVMe-oF 显著降低了延迟。NVMe 标准从一开始就是为直接连接到系统 PCIe 总线的固态硬盘设计的。相比之下,iSCSI 和 NFS 等旧协议是围绕传统硬盘的局限性和较慢的访问时间而开发的。几乎在所有情况下,NVMe-oF 技术都优于旧连接协议,具有更高的带宽和更快的访问时间。NVMe-oF 还可以利用具有远程直接内存访问 (RDMA) 功能的网络接口,使数据能够直接传输到目标计算机的内存中,而无需 CPU 处理。

数据缩减和优化功能

XN4 存储阵列的高性能硬件堆栈通过众多深受存储管理员认可和赞赏的软件功能得到进一步增强。精简配置、压缩和重复数据删除功能使企业能够最大限度地利用其 SAN 容量,而 SSD 缓存和自动存储分层功能则可加快常用文件和对象的访问速度。该设备的 QSM 4 操作系统还支持使用内置快照工具轻松测试和回滚更改。

安全和管理功能

QSAN 的 XN4 系列充分考虑了客户不断变化的安全和管理需求。XN4 兼容即时安全擦除 (ISE) 和自加密硬盘 (SED),以及 SSL/TLS 等安全协议、基于角色的访问控制 (RBAC) 身份验证以及对 Active Directory/LDAP 服务器的支持。该阵列可以使用 HTTPS Web UI 或 RESTful API 进行管理,并通过 Ansible 或 Terraform 等多种工具实现自动化。

QSM 4 管理

QSAN XN4 系列的操作系统 QSM 4 使各种经验水平的存储管理员都能轻松设置和管理存储阵列。开箱即用的部署非常简单:快速创建池、直观的主机分配以及通过 Web UI 和 REST API 进行的轻量级管理——所有这些都专为无需深厚存储专业知识的小型 IT 团队而设计。

仪表板屏幕显示系统状态信息和服务器记录的最近事件。


登录后,用户将看到“仪表板”屏幕,该屏幕提供 SAN 健康状况的快速概览。从这里,您可以跳转到左侧面板列表中的任何子菜单。

从存储菜单中,管理员可以创建和管理驱动器池及其相关卷。

您可以在“磁盘组”选项卡中管理构成每个池的磁盘组。此功能支持各种 RAID 级别,包括 0、1、5、6、10、50、60、5EE、6EE、50EE 和 60EE,具体取决于已分配的驱动器数量。

然后,可以在池之上构建用于块和文件存储需求的卷。使用向导,可以设置每个卷的容量和块大小,以满足连接客户端的需求。

向下移动列表,“共享”菜单可用于在文件卷上创建共享对象。支持的共享协议包括 CIFS (SMB)、FTP、NFS 和 WebDAV。

创建新共享时,QSM 4 提供两个选项:用于托管多个用户访问的文件的标准网络共享,以及用于保存只能单独访问的用户主文件夹的用户主共享。

创建块卷或文件卷和共享后,必须在“主机”菜单中为其分配 IP 地址或主机名。主机根据其对应的是块存储还是文件(共享)存储进行组织,如下面的屏幕截图所示。

块存储主机可以使用 iSCSI、FCP 或 NVMe-oF over TCP 协议来处理卷。相比之下,文件(共享)存储主机可以同时支持多种协议,为具有多样化文件共享需求的数据中心提供必要的灵活性。

QSM 4 还在监控菜单中提供了基本的监控功能,显示阵列内各种硬件模块和驱动器的状态,以及驱动器、存储池、CPU 和内存使用情况的统计信息。

QSM 4 网页用户界面 (Web UI) 的“帐户”菜单下还提供了用户、群组和域管理功能。“系统”菜单中还提供各种 SAN 范围的配置选项。“通知”菜单可访问日志记录和警报功能。最后,您可以在菜单栏的右上角找到 QSAN 文件管理器、语言支持和注销/电源管理图标。

简单的 Proxmox 集成

Proxmox 原生支持 NVMe over Fabrics (NVMe-oF),可轻松将高性能存储阵列集成到集群中。该过程首先在存储系统上配置 NVMe-oF 目标。然后,使用 Proxmox 主机发现并连接这些目标。连接后,您需要配置系统以确保这些连接在重启后仍然有效。

在我们的示例中,使用 shell 命令执行发现,该命令指定阵列的 IP 地址和服务端口。

nvme discover -t tcp -a 172.16.16.100 -s 4420
nvme discover -t tcp -a 172.13.13.100 -s 4420

接下来,通过引用其 NQN 连接到已配置的命名空间。

nvme connect -t tcp -n nqn.2024-11.com.qsan:dev4 -a 172.16.16.100 -s 4420
nvme connect -t tcp -n nqn.2024-11.com.qsan:dev6 -a 172.13.13.100 -s 4420

为了确保配置在重启后仍然有效,可以将发现地址附加到 NVMe 发现配置文件中。

echo "discover -t tcp -a 172.16.16.100 -s 4420" | tee -a /etc/nvme/discovery.conf
echo "discover -t tcp -a 172.13.13.100 -s 4420" | tee -a /etc/nvme/discovery.conf

最后,启用自动连接服务,以便 Proxmox 在启动时自动重新建立 NVMe 会话。

systemctl enable nvmf-autoconnect.service

Proxmox 可以与 QSAN 存储无缝集成,提供 NVMe 的低延迟、高带宽性能以及网络结构的灵活性。

连接我们的 QSAN 后,我们可以从 Proxmox shell 发出“nvme list”命令来显示所有 NVMe 设备,其中新添加的 QSAN 卷显示为 /dev/nvme6n1 和 /dev/nvme7n1,每个都有 11TB 的存储空间。

一旦 QSAN 存储在 Proxmox GUI 中可见,我们就可以创建一个新的 LVM 卷组:pve > 磁盘 > LVM,两个 11TB 设备(/dev/nvme6n1 和 /dev/nvme7n1)就会出现,并且可以初始化为单独的卷组(例如,qsan-1 和 qsan-2)以供虚拟机和容器使用。

单击存储窗格中的一个新的 LVM 池 (qsan-1) 表明它处于在线状态、已启用且可供使用,具有完整的 11TB 容量,并可用于 VM 和容器配置。

性能测试

我们在两个环境中测试了 QSAN XN4226D,并利用了不同的测试平台。第一个环境基于 Dell PowerEdge R750 构建,配备 4 个 NVIDIA ConnectX-5 双端口 25G 网卡。我们使用八根 DAC 线缆将 QSAN XN4226D 直接连接到该服务器。此设置充分利用了 QSAN 上所有可用的网络端口,从而能够展现其最高的峰值性能。

对于 FIO 测试,我们使用了两个 RAID6 存储池,创建了八个块卷,并均匀分布在两个控制器上。每个卷都分配给一个唯一的目标,并为每个卷分配一个 IP 地址。我们在此平台上测量了 NVMe-oF RDMA 和 TCP。

GDSIO 的第二个环境采用了配备两块 NVIDIA H100 GPU 和四端口 Broadcom 25G 网卡的 Dell PowerEdge R7715。在这个环境中,我们保留了相同的 QSAN 卷布局,但将卷数量从八个减少到了四个。使用四端口网卡,我们使用四个 25G 连接将服务器直接连接到存储阵列。

FIO性能基准

为了测量 QSAN XN4226D 的存储性能,我们采用了行业通用指标并利用了 FIO 工具。每个存储设备都经过相同的测试流程,其中包括一个预处理步骤,即两次以顺序写入工作负载填充整个驱动器,然后测量稳态性能。随着被测工作负载类型的变化,我们会再次运行一次以新传输大小填充的预处理填充。

在本节中,我们重点关注以下 FIO 基准:

  • 1M 顺序
  •  64K随机
  • 16K随机
  • 4K随机

1M 顺序写入带宽

在 1M 顺序写入测试中,NVMe over RDMA 在几乎所有队列深度和作业数量下均始终比 NVMe over TCP 提供更高的带宽。峰值时,RDMA 达到 11.14GB/s,而 TCP 最高达到 8.83GB/s,两者相差约 26%。即使在较低的队列深度下,RDMA 也保持了优势。例如,在 QD1/1 作业中,RDMA 达到 6.30GB/s,比 TCP 的 4.77GB/s 高出约 32%。

随着工作负载的增加,两种协议之间的性能差距有所缩小,但 RDMA 始终展现出明显的优势。TCP 在多个测试点上始终徘徊在 8.5 到 8.8GB/s 之间,而 RDMA 则频繁突破 10.5GB/s 大关,峰值略高于 11GB/s。

1M 顺序写入延迟

在 1M 顺序写入延迟测试中,RDMA 在大多数队列深度和作业数量下再次保持了优于 TCP 的显著效率优势。在较轻的工作负载下,两种协议的性能表现相当接近,均实现了低于 5 毫秒的延迟。然而,随着并发量的增加,差异变得更加明显。例如,在 QD16/16 作业中,RDMA 的延迟为 368.48 毫秒,而 TCP 的延迟为 455.95 毫秒,RDMA 的延迟提高了 19%。

在极端规模下,这种差异更加明显。在 QD256/1 作业中,RDMA 的完成时间为 1,389.16 毫秒,而 TCP 的完成时间为 1,987.39 毫秒,RDMA 的延迟降低了 43%。这一趋势凸显了 RDMA 在保持高吞吐量的同时控制延迟的能力,尤其是在高负载场景下。

1M 顺序读取带宽

在 1M 顺序读取测试中,性能动态发生了变化,TCP 的性能在各方面均明显优于 RDMA。TCP 的峰值达到了 21.21GB/s,而 RDMA 的最高速度达到了 15.96GB/s,两者相差约 33%。即使在较低的队列深度下,TCP 也能迅速领先。例如,在 QD1/4 作业中,TCP 的传输速度为 18.91GB/s,而 RDMA 的传输速度为 15.05GB/s,两者相差超过 25%。

TCP 的优势在几乎所有工作负载规模上都保持一致。一旦达到饱和状态,TCP 的速率仍保持在 20-21GB/s 范围内,而 RDMA 的速率则稳定在 15GB/s 左右。这表明,虽然 RDMA 在写入密集型和延迟敏感型操作中表现出色,但在测试的 RAID6 NVMe 配置下,TCP 展现出更强大的顺序读取带宽效率。

1M 顺序读取延迟

在 1M 顺序读取延迟测试中,两种协议的结果较为接近,尽管 RDMA 在较高的队列深度下通常略占优势。在较轻的工作负载下,延迟曲线几乎相同,两者都保持在 5 毫秒以下,直到并发性开始增加。例如,在 QD8/64 作业中,TCP 的延迟为 234.09 毫秒,而 RDMA 的延迟较低,为 194.54 毫秒,减少了 17%。

这种趋势在负载更重时依然持续。在 QD32/64 作业中,RDMA 测得的延迟为 847.59 毫秒,而 TCP 的延迟为 881.31 毫秒,略有提升,仅为 3.8%,但仍与 RDMA 较低的堆栈开销保持一致。也就是说,两种协议的扩展模式相似,随着工作负载的增加,延迟会可预测地上升。

64k 随机写入 IOPS

 

在 64K 随机写入测试中,RDMA 的 IOPS 始终高于 TCP,凸显了其在处理并行随机操作方面的高效性。峰值时,RDMA 达到了 58.89K IOPS,而 TCP 仅为 48.57K IOPS,两者性能优势高达 21%。

在整个测试过程中,两种协议之间的差距一直存在。例如,在 QD1/16 作业中,RDMA 的 IOPS 为 54.13K,而 TCP 的 IOPS 为 45.30K,差距接近 16%。随着工作负载的进一步扩展,RDMA 的 IOPS 保持在 53K 到 55K 之间,而 TCP 的 IOPS 保持在 42K 到 46K 之间。

64K随机写入延迟

在 64K 随机写入延迟测试中,RDMA 再次展现出比 TCP 更低的响应时间,尤其是在队列深度和作业数量增加的情况下。在较低负载下,两种协议的表现几乎相同,均保持在 1 毫秒以下。例如,在 QD1/1 作业中,TCP 测得的响应时间为 0.26 毫秒,而 RDMA 基本相同,为 0.25 毫秒。

然而,随着工作负载的增加,RDMA 仍然保持着其效率优势。在 QD16/64 作业中,RDMA 的耗时为 74.09 毫秒,而 TCP 的耗时为 95.64 毫秒,两者相差约 23%。在 QD256/1 作业的最大压力下,两者之间的差距进一步扩大,RDMA 的耗时为 291.13 毫秒,而 TCP 则飙升至 398.56 毫秒,高出近 37%。

64K 随机读取 IOPS

在 64K 随机读取测试中,TCP 和 RDMA 的整体性能非常相似,根据工作负载的不同,两种协议之间的领先优势略有不同。TCP 的峰值达到了 176.33K IOPS,而 RDMA 紧随其后,达到了 175.40K IOPS,两者之间仅相差 0.5%。

在中等深度下,结果仍然紧密相关。例如,在 QD4/16 作业中,TCP 的 IOPS 为 168.60K,而 RDMA 紧随其后,为 163.94K IOPS,差距不到 2.8%。在其他情况下,RDMA 略胜一筹,例如 QD8/1 作业,其 IOPS 为 171.71K,而 TCP 为 171.15K IOPS,基本打成平手。

64K随机读取延迟

在 64K 随机读取延迟测试中,两种协议的表现非常接近,不过 RDMA 在高负载下略占优势。在轻负载下,TCP 和 RDMA 的延迟均低于 1 毫秒,基本难以区分。例如,在 QD1/1 作业中,TCP 的延迟为 0.43 毫秒,而 RDMA 的延迟为 0.38 毫秒。

随着并发性的增加,差异变得更加明显。在 QD16/64 作业中,RDMA 耗时 23.28 毫秒,而 TCP 耗时 26.19 毫秒,提升了 12%。在最大压力下,两者差距进一步拉大,RDMA 耗时 98.08 毫秒,而 TCP 耗时 129.02 毫秒,降低了 24%。

16K随机写入IOPS

在 16K 随机写入测试中,两种协议之间的性能差距显著,在大多数情况下,RDMA 提供的 IOPS 是 TCP 的两倍以上。RDMA 的峰值为 111.13K IOPS,而 TCP 的最高值为 68.95K IOPS,RDMA 的优势达到 61%。

在较低的队列深度下,差异更加明显。例如,在 QD1/16 作业中,RDMA 测得 104.86K IOPS,而 TCP 为 41.78K IOPS,这意味着 RDMA 的性能提升了 151%。在整个工作负载范围内,RDMA 的性能始终保持在 100K 到 111K IOPS 范围内,而 TCP 的性能通常保持在 40K 到 50K IOPS 范围内,除了在最大深度时出现后期激增。

16K随机写入延迟

在 16K 随机写入延迟测试中,随着工作负载的扩展,RDMA 再次保持了优于 TCP 的明显优势。在较轻负载下,两种协议几乎相同,响应时间均保持在 2 毫秒以下。例如,在 QD1/1 作业中,TCP 的响应时间为 0.40 毫秒,而 RDMA 的响应时间为 0.41 毫秒。

随着并发度的提高,RDMA 开始分出高低。在 QD16/64 作业中,RDMA 的耗时为 21.15 毫秒,而 TCP 的耗时为 77.12 毫秒,大幅缩短了 72%。这种优势在最高深度下依然保持。在 QD32/64 作业中,RDMA 的完成时间为 161.13 毫秒,而 TCP 的完成时间为 235.17 毫秒,缩短了 31%。

16K 随机读取 IOPS

在 16K 随机读取测试中,RDMA 在整个工作负载范围内完全超越 TCP。RDMA 的峰值达到了 388.44K IOPS,而 TCP 的最高速度仅为 16.42K IOPS,RDMA 的优势超过 TCP 的 23 倍。

这种差异从一开始就显而易见。在 QD1/1 作业中,RDMA 提供了 29.27K IOPS,而 TCP 仅提供了 8.10K IOPS。随着并发性的增加,RDMA 迅速扩展到 300K 到 380K IOPS 的范围,而 TCP 则稳定在 15K 到 16K IOPS 左右,即使在更高的队列深度下也是如此。

16K随机读取延迟

在 16K 随机读取延迟测试中,RDMA 和 TCP 之间的差异非常显著,这与 IOPS 结果相符。在轻负载下,两种协议几乎相同,延迟范围从 1 到 10 毫秒。

随着工作负载的扩展,RDMA 的延迟得到了很好的控制,而 TCP 的延迟则显著下降。在 Q8/64 作业中,RDMA 的测量时间为 13.65 毫秒,而 TCP 的测量时间为 260.90 毫秒,两者相比提升了近 19 倍。最终,QD32/64 作业在 63.28 毫秒内完成了 RDMA,而 TCP 则耗时 2,366.99 毫秒,几乎是后者的 37 倍。

4K随机写入IOPS

在 4K 随机写入测试中,RDMA 的表现始终优于 TCP,尽管与较大块大小的工作负载相比,两者之间的差距较小。RDMA 的峰值达到了 125.73K IOPS,而 TCP 达到了 115.89K IOPS,RDMA 的优势约为 8.5%。

在较低的队列深度下,TCP 略逊于 RDMA,但仍具有相当不错的性能。例如,在 QD1/16 作业中,RDMA 达到了 122.82K IOPS,而 TCP 仅为 111.91K IOPS,两者性能提升了近 10%。在大多数测试点上,RDMA 的 IOPS 徘徊在 120K 到 125K IOPS 之间,而 TCP 的 IOPS 则保持在 110K 到 116K IOPS 之间,在 QD32/64 作业中略有下降,降至 92.21K IOPS。

4K随机写入延迟

在 4K 随机写入延迟测试中,RDMA 的响应时间始终低于 TCP,尽管与较大的块工作负载相比,差距较小。在较轻负载下,两种协议几乎相同,均保持在 1 毫秒以下。例如,在 QD1/1 下,TCP 测得的延迟为 0.16 毫秒,而 RDMA 测得的延迟为 0.21 毫秒。

随着并发性的增加,差异变得更加明显。在 QD16/64 作业中,RDMA 的延迟为 19.36 毫秒,而 TCP 的延迟为 36.20 毫秒,RDMA 的延迟降低了 46%。在最大深度下,RDMA 的完成时间为 145.61 毫秒,而 TCP 的完成时间为 177.62 毫秒,RDMA 的延迟降低了 22%。

4K 随机读取 IOPS

在 4K 随机读取测试中,两种协议都表现出色,但 RDMA 始终略胜 TCP 一筹。RDMA 的峰值达到了 404.64K IOPS,而 TCP 的最高峰值为 382.96K IOPS,RDMA 领先 5.7%。

在较低深度下,结果已经对 RDMA 有利。例如,在 QD1/16 作业中,RDMA 实现了 353.57K IOPS,而 TCP 为 329.10K IOPS,两者相差约 7.5%。随着工作负载的扩展,RDMA 保持领先,通常在 360K 到 400K IOPS 范围内运行,而 TCP 则保持在 330K 到 380K IOPS 左右。

4K随机读取延迟

在 4K 随机读取延迟测试中,RDMA 展现出优于 TCP 的明显效率优势,尤其是在工作负载规模增加的情况下。在队列深度较小的情况下,两种协议的性能几乎相同。例如,在 QD1/1 作业中,TCP 的延迟为 0.24 毫秒,而 RDMA 的延迟仅为 0.27 毫秒。

随着并发性的提高,RDMA 逐渐领先。在 QD16/64 作业中,RDMA 的延迟为 23.92 毫秒,而 TCP 的延迟为 26.81 毫秒,提升了 10.8%。在 QD32/64 作业的最高负载下,RDMA 的完成时间为 54.61 毫秒,而 TCP 的延迟则飙升至 70.12 毫秒,RDMA 的延迟降低了 22%。

GPUDirect存储性能

我们在此测试平台上进行的测试之一是 Magnum IO GPU 直接存储 (GDS) 测试。GDS 是 NVIDIA 开发的一项功能,允许 GPU 在访问 NVMe 驱动器或其他高速存储设备上存储的数据时绕过 CPU。GDS 无需通过 CPU 和系统内存路由数据,而是支持 GPU 和存储设备之间的直接通信,从而显著降低延迟并提高数据吞吐量。

GPUDirect 存储的工作原理

传统上,当 GPU 处理存储在 NVMe 驱动器上的数据时,数据必须先经过 CPU 和系统内存,才能到达 GPU。这个过程会引入瓶颈,因为 CPU 充当了中间人的角色,增加了延迟并消耗了宝贵的系统资源。GPUDirect Storage 允许 GPU 通过 PCIe 总线直接从存储设备访问数据,从而消除了这种低效率。这种直接路径减少了与数据移动相关的开销,从而实现了更快、更高效的数据传输。

AI 工作负载,尤其是涉及深度学习的工作负载,是高度数据密集型的。训练大型神经网络需要处理数 TB 的数据,任何数据传输延迟都可能导致 GPU 无法充分利用并延长训练时间。GPUDirect Storage 通过确保数据尽快传输到 GPU,最大限度地减少空闲时间并最大限度地提高计算效率,解决了这一挑战。

此外,GDS 对于涉及流式传输大型数据集的工作负载(例如视频处理、自然语言处理或实时推理)尤其有益。通过减少对 CPU 的依赖,GDS 可加速数据移动并释放 CPU 资源以用于其他任务,从而进一步提高整体系统性能。

除了原始带宽之外,搭载 NVMe-oF (TCP/RDMA) 的 GPUDirect 还能提供超低延迟 I/O。这确保 GPU 永远不会缺数据,使该系统成为实时 AI 推理、分析管道和视频回放的理想选择。

对于许多实际部署,这相当于 100-200 GbE 可用吞吐量,与 AI 推理(2-4 个 GPU)、媒体制作(广播重放、OTT 边缘缓存)、监控视频分析和 HPC 检查点等工作负载完美匹配。

读取吞吐量

在 GDSIO 顺序读取工作负载中,吞吐量随块大小和线程数的增加而稳步增长,在多个测试点上达到了 11.0GiB/s 的最高值。当块大小达到 512K 及以上时,吞吐量始终稳定在 10.9 到 11.0GiB/s 之间,无论线程数多少。

在较小的块大小下,性能一开始会低得多。例如,对于 4K 块,单线程吞吐量一开始仅为 0.3GiB/s,即使在 256 个线程的情况下也能稳定在 1.5GiB/s。相比之下,将块大小增加到 64K 后,系统可以扩展到 10.9GiB/s,随着线程数量的增加,吞吐量几乎达到饱和状态。

最佳性能点似乎在 128K 到 256K 块之间,此时吞吐量在 32 个或更多线程的情况下超过 10GiB/s,并且在测试的最大块大小下保持一致。这表明,一旦块大小足够大,平台就会达到带宽饱和,而 256K 以上仅略有提升。

阅读延迟

在 GDSIO 顺序读取延迟测试结果中,响应时间随块大小和线程数的变化而变化,且呈现可预测性。在最小工作负载下,延迟仍然保持极低。例如,在单线程 4K 块的情况下,延迟仅为 50µs;在最小并发性下,块大小达到 32K 时,延迟保持在 200µs 以下。

随着线程数量的增加,延迟开始更加明显地上升。在 64K 块和 64 个线程的情况下,延迟达到 1.5 毫秒,在 128 个线程的情况下翻倍至 2.9 毫秒,在 256 个线程的情况下则攀升至 5.7 毫秒。相比之下,即使在最多 256 个线程的情况下,较小的块大小(例如 4K 和 8K)也仅在 2.7-2.8 毫秒范围内,这表明在更精细的粒度上控制更为严格。

更大的块大小带来了更剧烈的跳跃。在 1M 块和 256 个线程的情况下,延迟达到了 96.1 毫秒,而 10M 块和 256 个线程的情况下,延迟飙升至 4.3 秒,这清楚地表明了系统在极端条件下的扩展极限。

写吞吐量

在 GDSIO 顺序写入工作负载中,吞吐量随块大小和线程数而变化,但远低于读取性能上限。系统在 128 个线程下使用较大的块大小(例如 5M 和 10M)时,峰值达到了 7.2 GiB/s。

在最小块大小下,吞吐量适中。使用 4K 块时,单线程性能初始为 0.3GiB/s,32 线程时扩展到 1.0GiB/s,然后趋于平稳。将块大小增加到 64K 后,带宽进一步提升,8 线程时达到 5.6GiB/s,之后并发度增加时略有下降。

最佳平衡出现在 512K 到 1M 块左右,不同线程数下的吞吐量范围为 6.7 到 7.1GiB/s,表明系统在此范围内达到饱和。超过该值后,增加线程并不能带来显著的性能提升,在某些情况下,由于开销增加,性能实际上略有下降。

写入延迟

在 GDSIO 顺序写入延迟结果中,响应时间在较低的块大小下平稳扩展,但一旦块大小和线程数增加,响应时间就会急剧增加。

在最小工作负载下,延迟极低。在 4K 块和单线程下,平均延迟仅为 58µs;在 16K 块和最多四线程下,延迟保持在 200µs 以下。即使在 32K 块和中等并发性下,延迟也保持在 1ms 以下。

随着系统转换为更大的块大小,延迟变得更加明显。在 128K 块和 64 个线程的情况下,延迟达到 5.3 毫秒,在 128 个线程的情况下再次翻倍至 10.7 毫秒。当块大小为 512K 时,延迟进一步增加,在 256 个线程的情况下攀升至 73.4 毫秒。

最重的情况是 256 个线程的 5M 和 10M 块,延迟分别急剧上升至 709 毫秒和 4.8 秒,揭示了顺序写入扩展的上限。

总结

QSAN 的 XN4226D 恰好满足了许多 IT 团队的需求。它是一个统一的双控制器 NVMe 平台,无需架构变更即可支持现代和传统协议。在我们的测试中,TCP 以 21.21 GB/s 的速度领先于大型顺序读取,而 RDMA 则以 11.14 GB/s 的速度实现了最强的大型顺序写入,并且随着并发性的扩展,延迟也保持在较低水平。在较小的块大小下,RDMA 持续提升了随机写入效率,并有效控制了尾部行为。结论很简单:使用 NVMe-oF TCP 可获得广泛的兼容性和高读取带宽,而当写入延迟和一致性至关重要时,则选择 RDMA。

硬件占用空间实用。2U 机箱内配备 26 个用于 U.2 或 U.3 NVMe 硬盘的前置托架,具有主动高可用性,并且在容量优先于原始 NVMe 速度的情况下,可轻松扩展至 SAS 盘架。QSM 4 提供预期的数据服务和简洁的用户界面,以及 REST API,可与现有自动化系统无缝集成。小型 IT 团队应该会发现 QSM 4 易于配置和管理。为了验证这一点,我们轻松集成了 Proxmox 集群,为这些虚拟机提供高速存储访问。对于更高级的工作负载,QSAN 完全可以满足中小企业的 AI 需求。

对于注重可预测性能、清晰管理和多协议覆盖的企业,XN4226D 值得推荐。它提供真正的 NVMe 吞吐量、强大的 RDMA 写入延迟以及不会拖慢您速度的软件体验。加上合理的价格,这款 QSAN 平台能够轻松应对混合环境。

QSAN 产品页面

参与 StorageReview

订阅消息 | YouTube | 播客 iTunes/Spotify | Instagram | Twitter | TikTok | RSS订阅

安德鲁·瓦格

Andrew Waag 是 Linde plc 的分布式系统管理员,他的兴趣包括服务器硬件、企业存储系统和网络设备。他总是在寻找新事物来利用他的家庭实验室,并尝试虚拟化和存储技术。