随着人工智能的全面普及,海量归档数据的价值被不断挖掘,这些数据此前大多处于未充分利用的状态。这使得原本被归为冷数据或休眠数据的存储层级迎来访问热潮,行业也开启了一场挖掘历史数据价值、从海量数据中学习的新竞赛。传统上,机械硬盘 (HDD) 一直是归档存储的核心载体,能够满足这类冷数据存储层级的需求。但如今,随着数据访问需求激增以支撑 AI 模型训练和 GPU 工作负载,机械硬盘的性能短板愈发凸显。
机械硬盘的性能已无法跟上高速数据提取与传输的需求。此外,尽管机械硬盘的数据存储密度已实现大幅提升,但相较于市场份额持续扩大的高密度四级单元 (QLC) 固态硬盘,仍存在明显差距。与机械硬盘相比,QLC 固态硬盘不仅存储密度更高,还能大幅减少机架占用空间、提升能源利用效率。这一技术优势正推动行业向高密度 QLC 驱动器快速转型。
固态存储技术历经了跨越式发展,从单级单元 (SLC) 演进至多级单元 (MLC)、三级单元 (TLC),如今迈入四级单元 (QLC) 架构时代;每一次技术迭代,都让单个存储单元能够存储更多数据位。从二维平面闪存 (2D NAND) 到三维堆叠闪存 (3D stacked NAND) 的升级,进一步放大了存储能力。如今的 NAND 芯片堆叠层数普遍突破 300 层。在企业级存储领域,主流单盘固态硬盘的容量已达到 61.44TB 和 122.88TB,更大容量的驱动器产品也即将面世,正推动高性能、大容量归档存储迈入全新阶段。
针对 50 兆瓦功率预算下的 16PB 网络附加存储 (NAS) 部署场景,图 1 展示了全 QLC 存储解决方案与 TLC + 机械硬盘混合存储解决方案的性能对比。
与传统 TLC + 机械硬盘混合架构相比,全 QLC 大容量存储阵列在提供同等存储容量的前提下,可将存储功耗降低约 90%。此外,机架使用数量也大幅减少,实现 8 倍的空间压缩。磁盘驱动器数量的减少,也降低了存储设备的整体重量,大幅降低数据中心机房地面的承重要求。同时,QLC 架构还能显著提升每 TB 存储的接口带宽。具体细节与假设条件详见附录 A。
| 性能参数 | 30TB Exos M 机械硬盘 | 122.88TB Solidigm™ D5-P5336 QLC |
| 连续写入 | 262 MB/s | 3000 MB/s |
| 连续读取 | 275 MB/s | 7000 MB/s |
| 随机写入 | 350 IOPS | 19,000 IOPS |
| 随机读取 | 170 IOPS | 900,000 IOPS |
表 1. 机械硬盘与 Solidigm D5-P5336 QLC 固态硬盘性能对比
表 1 对比了 30TB HAMR 机械硬盘1与 122.88TB Solidigm D5-P5336 QLC 固态硬盘2的读写性能。总体而言,QLC 固态硬盘的读写速度远高于机械硬盘,且存储密度也大幅提升。对于部署 PB 级存储的现代 AI 数据中心和云数据中心而言,全 QLC 闪存阵列的每 TB 带宽远高于基于机械硬盘的存储阵列。这意味着,读取相同大小的数据块时,全闪存阵列的耗时大幅缩短,从而让存储基础设施能够匹配 GPU 的处理速度,减少 GPU 的空闲时间。
QLC 固态硬盘具备诸多优势。但随着 QLC 容量不断提升,间接寻址单元 (IU) 的规格也从传统的 4K 逐步升级至 16K、64K。这是因为企业级固态硬盘控制器的 DRAM 规格受功率预算限制,而 DRAM 通常用于存储闪存转换层 (FTL) 表,该表负责将逻辑地址映射为物理地址。随着磁盘容量增加,FTL 表的条目数量也会增多,需要占用更多 DRAM 空间。这带来了成本和实现上的双重挑战。因此,许多厂商选择增大 IU 的规格,以减少 FTL 表条目数量,从而让驱动器占用的有效 DRAM 容量与低容量固态硬盘保持相近水平。
QLC 固态硬盘的 IU 规格持续增大,但软件栈并未适配这一变化。其仍基于传统小规格间接寻址单元的存储设计原则运行。这种不匹配可能导致写入放大系数 (WAF) 升高,进而对 QLC 固态硬盘的使用寿命产生负面影响。例如,如果应用程序需要向 64K IU 规格的固态硬盘写入 4K 数据块,实际写入的数据量为 64K,导致小文件写入的写入放大系数达到 64/4=16。由于操作系统的内存页大小通常为 4K,缺乏优化的情况下,每次 4K 写入都会导致数据量放大 16 倍,影响固态硬盘的耐用性和读写速度。
存储软件厂商正持续优化其存储栈,以适配大规格 IU 的固态硬盘。为让中小企业 (SME) 也能享受到这一能力,Solidigm 通过云存储加速层 (CSAL) 将写整形功能开源,助力大容量 QLC 固态硬盘的落地应用。
CSAL 是一款主机端闪存转换层,专为优化高密度 NAND 闪存固态硬盘的性能和耐用性而设计,尤其适用于混合工作负载场景。
如图 2 所示,CSAL 采用分层存储架构,将高性能存储介质(如 Solidigm D7-PS1010)作为前端缓存和写缓冲区。其将主机端的小粒度随机写操作转换为底层大容量 QLC 固态硬盘的大粒度连续写操作。在此过程中,CSAL 将应用层的小粒度写入操作聚合为等于或大于 QLC 固态硬盘间接寻址单元的块大小,实现间接寻址单元对齐。这一转换大幅降低写入放大系数,延长闪存使用寿命,同时提升吞吐量并降低延迟。
读取操作可直接从缓存获取,或利用 QLC 固态硬盘媲美 TLC 的高读取带宽完成。
AI 工作流的不同阶段对存储的需求差异显著。例如,AI 训练过程中会频繁保存检查点文件等大量临时数据。在此阶段,存储设备需处理大粒度数据块的大量连续写操作,非常适合 QLC 固态硬盘。然而在 AI 推理阶段,检索增强生成 (RAG) 技术被广泛应用,这也使得向量数据库的使用需求大幅提升。此阶段存储设备需处理大量小粒度随机写操作。
为更好地满足数据 I/O 模式频繁变化、I/O 大小多样化的应用需求,我们推出了搭载 CSAL 的 DPU 原生弹性解耦存储解决方案。
如图 3 所示,我们将 CSAL 功能卸载至 DPU,实现弹性存储解决方案。该示例解决方案采用存储与计算解耦的架构,为缓存驱动器和容量驱动器配置独立的存储节点。
本节将进一步阐述该解决方案的组件。
DPU 卡上的计算资源可有效支撑轻量级 CSAL 软件的存储计算需求,如闪存转换层的逻辑地址-物理地址表查询、用户数据块聚合等。此外,DPU 卡上的 DRAM 资源可用于存储部分闪存转换层表内容。通过利用 DPU 卡上的资源,CSAL 可有效减少对主机 CPU 和内存的占用,使其能更高效地为业务相关服务提供算力支持。此外,如果高端 DPU 配备了更大容量的 DRAM 内存资源可供存储处理使用,我们可以修改 CSAL 软件的配置选项,直接利用 DPU DRAM 替代高性能缓存盘,实现软件的缓存功能。该设计让内存的使用和配置更具灵活性。
存储节点由全闪存阵列构成,搭载固态硬盘,可混合部署高速 TLC 缓存盘和高密度 QLC 容量盘。每个存储节点将配备多块 DPU 卡。通过 DPU 卡为主机提供基于 NVMe-oF 的目标设备服务。存储节点采用多路径访问模式接入存储网络。这既提升了数据 I/O 带宽,又避免了单点故障风险。
计算节点服务器通常搭载大量 GPU 和 DPU,以满足高计算需求。目前 DPU 基础设施的应用正处于早期普及阶段。虽然目前 DPU 的处理能力尚未得到充分利用,但许多应用正在不断发展,以利用 DPU 提供的处理能力来卸载主机计算。CSAL 正是这样做的。我们将 CSAL 软件模块从计算节点的 CPU 迁移至 DPU 卡。这实现了网络传输过程中的数据高速处理,最大化利用原本闲置的 DPU 资源。
依托 DPU 硬件和 NVMe-oF 协议,CSAL 的部署范围可从单台设备扩展至跨网络的弹性存储解决方案。全闪存阵列(即“纯闪存盒”或“JBOF”)存储节点通过网络提供多个 NVMe-oF 目标设备。数据中心管理软件可根据人工智能计算的不同阶段和需求,灵活配置存储容量和功能。
本节将通过多个案例,说明如何利用 CSAL 存储的弹性特性,适配 AI 工作流的各个阶段。AI 计算的不同阶段对应不同的 I/O 模式。以下案例将展示如何利用 CSAL 创建多样化的卷,满足 AI 工作流各阶段的存储需求。
本案例中,假设 CSAL 闪存转换层部署在 Solidigm 122TB QLC 固态硬盘上。如果计算节点在数据摄入和检查点生成阶段需要 200TB 存储容量,管理软件可指示 CSAL 在计算节点的 DPU 上,创建由两个 NVMe-oF 目标设备组成的虚拟磁盘。由于这两个阶段以大粒度连续写操作为主,缓存盘为可选配置。DPU 中的 DRAM 可将文件系统产生的少量 4K 数据块聚合成大粒度连续数据块,再直接写入 QLC 大容量磁盘。
本案例中,假设计算节点为推理服务器。推理阶段的 I/O 模式以小粒度随机读写的混合访问为主。检索增强生成 (RAG) 是一种推理技术。向量数据库是 RAG 系统的核心组件。若需创建 200TB 存储容量用于存放向量数据库,管理软件可在计算节点的 DPU 上创建 CSAL 虚拟磁盘,由 1 个 16TB 缓存目标设备和 2 个 122TB QLC 目标设备组成。然后,将其用于存储向量数据库。由于向量数据库的 I/O 模式为小粒度块随机读写,高性能缓存目标设备会将小粒度 I/O 对齐至间接寻址单元,并聚合成大数据块后,再写入随后的 QLC 目标设备。
通过引入 DPU 和 CSAL 软件,数据中心可更高效地利用所有存储磁盘,并根据需求灵活配置、创建和释放存储资源。
为验证 QLC 固态硬盘间接寻址单元 I/O 对齐带来的性能提升,以及基于 DPU 和 CSAL 的弹性存储解决方案的优势,我们在实验室搭建了如图 4 所示的测试环境。
如图 4 所示,① 和 ② 为大容量 QLC 固态硬盘,③ 为高性能 TLC 缓存盘。④ 和 ⑤ 为通过 DPU 网络和交换机,将底层物理磁盘整合后创建的虚拟 NVMe-oF 磁盘。
在测试环境中,存储节点上的 DPU 将固态硬盘转换为 NVMe 目标设备,通过网络向计算节点开放。为进行对比测试,我们将 ① 号大容量 QLC 固态硬盘映射为独立虚拟磁盘 ④;同时通过 CSAL 软件将 ② 和 ③ 映射为虚拟磁盘 ⑤。随后,我们使用主流存储压力测试软件 FIO,对两个虚拟磁盘进行存储性能测试。
在测试过程中,我们将写入数据块大小、写入队列深度、写入模式进行不同组合,以适配人工智能各阶段的块大小需求。例如,数据准备和检查点生成阶段以大数据块写入为主,对应测试 1;向量数据库和预写式日志应用以频繁的 4K 随机数据写入为主,对应测试 4。测试结果如下图 5 所示。
基于上述测试环境,我们对独立大容量 QLC 磁盘,以及由高速缓存盘 + 大容量 QLC 磁盘组成的 CSAL 虚拟磁盘,开展了五项性能测试。这五项测试的 I/O 模式对应人工智能计算的多个不同阶段:
数据清理
训练阶段检查点
对象存储
预写式日志
数据准备
检索增强生成 (RAG)
测试结果显示,对于 4K 小粒度写入(无论随机还是连续),CSAL 虚拟磁盘的性能较独立 QLC 固态硬盘提升约 20 倍。在非均匀随机分布的 zipf 测试中,得益于热数据的缓存效应,CSAL 解决方案的性能较独立 QLC 固态硬盘提升约 15 倍。
需要说明的是,即便独立 QLC 固态硬盘的测试结果也远优于机械硬盘,因为四代 QLC 固态硬盘的写入性能是机械硬盘的 10 倍以上。我们的测试验证了 CSAL 这类现代存储软件解决方案的重要性:其能充分挖掘固态存储的底层原生性能,满足 AI 基础设施的需求,同时实现存储容量的弹性扩展和配置的灵活调整。
随着 AI 应用的持续增长,海量数据需快速传输至计算节点,这让高速、弹性的存储成为 AI 基础设施的核心组件。最新的 AI 基础设施提出了存储与计算分离的架构要求,推理应用则提出了预填充与解码 (PD) 分离的需求,两者均对存储的弹性提出了极高要求。
我们的测试结果表明,在 AI 推理应用中,CSAL 与 DPU 的组合可无缝支撑对象存储和向量数据库的存储性能与容量需求。这款 CSAL + DPU 解决方案,旨在让大型数据中心能够根据需求更灵活地分配存储资源,最大化客户在网络和存储领域的投资价值。
Wayne Gao 是 Solidigm 的首席工程师和解决方案存储架构师。他从路径探索到商业发布,全程参与了 Solidigm 云存储加速层 (CSAL) 的开发工作。Wayne 拥有超过 20 年的存储开发经验,持有 4 项美国专利(已申请/授权),并在 EuroSys 上发表过论文。
Bo Li 是 Solidigm 的高级存储解决方案架构师。他拥有超过二十年跨多个组织的系统设计和开发经验,专注于优化网络和存储解决方案的性能。近年来,他致力于推动非易失性存储技术在全行业的普及。
Sarika Mehta 是 Solidigm 的高级存储解决方案架构师,拥有超过 16 年在英特尔存储部门及 Solidigm 的工作经验。她致力于与 Solidigm 客户和合作伙伴密切合作,以优化其存储解决方案的成本和性能。她负责针对存储部署中的各种存储用例(从直接连接存储到分层和非分层解耦存储解决方案)对 Solidigm 固态硬盘进行调优和优化。她在存储领域的各个方面都有着丰富经验,包括认证、性能基准测试、探索新方向、技术营销和解决方案架构。
2. https://www.solidigm.com/products/data-center/d5/p5336.html#form=U.2%2015mm&cap=122.88TB
来源:Solidigm,2024 年 10 月。其他信息资源 见 下文所述。
适用范围:功耗分析基于新建的入门级超大规模/二级 AI 数据中心部署场景,该类数据中心采用前沿的功耗与空间优化方案。关键模型参数如下:
假设数据中心总可用能源容量为 50MW
每个 Nvidia DGX H100 机架搭配 16,000TB 存储容量。目标存储容量基于 NetApp AI Pod 搭载 DGX H100 系统的参考架构所取的近似中点值 (https://docs.netapp.com/us-en/netapp-solutions/ai/aipod_nv_architecture.html#netapp-ai-pod-with-dgx-h100-systems)
英伟达 H100 服务器核心 IT 设备功耗为 11,223 瓦;搭载 4 台该服务器的 DGX H100 机架总功耗为 44,488 瓦
(资料来源:https://www.semianalysis.com/p/ai-datacenter-energy-dilemma-race)
NVMe/HDD NAS 存储部署详情:
a. TLC + 机械硬盘:容量部署:10% TLC 固态硬盘部署于性能层,90% 机械硬盘部署于对象层。TLC 存储服务器:基于 Supermicro A+ Server 1124US-TNR;搭载 12 块 U.2 接口 7.68TB 固态硬盘 (https://www.supermicro.com/en/Aplus/system/1U/1124/AS-1124US-TNR.cfm)。HDD JBOD 基于 Supermicro Storage SuperServer SSG-640SP-DE1CR90;搭载 90 块 3.5 英寸 30TB 机械硬盘 (https://www.supermicro.com/en/products/system/storage/4u/ssg-640sp-de1cr90)。机械硬盘负载率按 100% 估算。TLC 固态硬盘活动功耗 = 20W,空闲功耗 = 5W。机械硬盘活动 10R/90W 功耗 = 9.8W,空闲功耗 = 6W。冗余架构为 Hadoop 三副本(3 倍备份)
b. 全 QLC:容量部署:16% QLC 固态硬盘部署于存储服务器,84% QLC 固态硬盘部署于 JBOF。QLC 存储服务器:基于 Supermicro A+ Server 1124US-TNR;搭载 12 块 U.2 接口 122.88TB 固态硬盘 (https://www.supermicro.com/en/Aplus/system/1U/1124/AS-1124US-TNR.cfm)。QLC JBOF:基于 Supermicro Storage SuperServer SSG-136R-4MU32JBF;搭载 32 块 NVMe 接口 122.88TB 固态硬盘 (https://www.supermicro.com/en/products/system/storage/1u/ssg-136r-4mu32jbf)。QLC 固态硬盘负载率按 11% 估算。QLC 固态硬盘活动读取功耗 = 24W,空闲功耗 = 5W。冗余架构:RAID 1 镜像(2 倍备份)
| 测试系统配置 | |
| 系统 | 制造商:AMD 产品名称:AMD EPYC 7542 32 核处理器 |
| BIOS | 供应商:AMD Corporation |
| CPU | AMD EPYC 7542 32 核处理器 |
| 1 x 插槽 @2.9GHz,32 内核/每插槽 | |
| NUMA 节点 | 4 |
| DRAM | 总计 440GiB DDR4@ 2667 MT/S |
| 操作系统 | Rocky Linux 9.6 |
| 内核 | Linux d3.d3 5.14.0-503.14.1.el9_5.x86_64 |
| 固态硬盘 | 4 x Solidigm D5-P5336 15.36TB,固件版本:5CV10302,PCIe Gen4x4 4 x Solidigm D7-PS1010 3.84TB,固件版本:G70YG030,PCIe Gen5x4 |
| Fio | 版本: 3.39 |
| DPU | MT43244 BlueField-3 |
表 2. 系统配置
Solidigm D5-P5336 规格 https://www.solidigm.com/products/data-center/d5/p5336.html
CSAL Tech Field Day 演示 https://www.youtube.com/watch?v=tAdQC5G0S8o
开源 CSAL 文档 https://spdk.io/doc/ftl.html