
今天我们通过OCP 2024峰会上,NVIDIA和Supermicro做的演讲《High Performance Data Center Storage Using DPUs》来看下DPU在存储领域的应用。

这次演讲介绍了一种使用基于DPU 的 JBOF(Just a Bunch of Flash)来运行存储数据管理栈的Scale-out全闪存存储架构的serverless实现方案。该解决方案适用于包括AI 训练在内的一系列高性能工作负载。
实现此设计的挑战包括:实现DPU 平台所需存储性能;JBOF、DPU 与存储栈的集成;数据路径处理功能的卸载支持;多种网络协议的支持。
这次演讲还介绍了JBOF 平台如何支持 EDSFF(企业和数据中心固态硬盘外形规格)介质形态,以实现更高密度和更高效的散热。

演讲人打了个比方,GPU和青少年一样,永远很饿。青少年对冰箱里的食物感到饥饿,而GPU则是对数据很饥饿。PPT左边的图说明,CPU数据集的数量级是GB级别,而GPU的数据集的数量级则是TB或者PB级别。
CPU有几十个Cores,而GPU则有数万个Cores。因此和CPU相比,GPU等待将数据放进存储系统的时间在整体的处理时间中占比更长。
提升性能的最简单的解决方案就是提升IO性能,比如网卡从CPU计算的25G升级到GPU计算的200G。

这页PPT的左边显示了模型训练参数量,它从五年前数百万级别的参数,到现在的超过万亿级别。训练需要大量的数据和带宽。
右边是RAG(RAG的目的是通过从外部知识库检索相关信息来辅助大语言模型生成更准确、更丰富的文本内容)。
RAG基本就像一个事实检查器和大语言模型的访问控制机制。它负责处理的事情,举例来说:
在做推理时,比如大语言模型训练失败时谁应该访问不同的信息;
大语言模型中的数据可以很容易地过时,如何支持新产品,新订单什么之类的。
RAG使用向量数据库来做到这一点,并将所有查询进行检查,并将更新的查询信息放入向量数据库,因此它一直在增长。所以在推理侧也需要大量的性能。
推理也是时延敏感的,因为需要和正在输入查询的人/计算机进行交互,所以时延超级重要。

下图是BlueField DPU在存储中的解决方案。它不仅被应用于JBOF中,而且在存储数据的整个路径上(前端或者客户端)都有应用。PPT左边列出了三项:
(1)JBOF:替代X86 CPU、NIC 和 DRAM,实现节能、优化机架尺寸、降低成本
(2)存储前端控制器:卸载和加速计算密集型操作的数据路径(加解密、压缩、纠删码等)
(3)AI计算服务器:提供大规模加速存储服务,通过隔离和策略执行保障安全,支持多租户,将虚拟机管理程序等卸载到主机

这张PPT以BlueFiled DPU为例介绍了DPU的一些共同要素。
比如多个ARM或者RISC-V的CPU(BlueFiled是16 个 ARM Cortex-A78核心),很多硬件卸载(循环密集型和延迟敏感型)、IO(1个PCIe 5.0 Switch、2个400Gb Eth接口、IB) 、SDK(DOCA,会保证今天的DPU应用在后续的DPU上都能跑起来)

下面这张PPT对比了x86-based JBOF和DPU-based JBOF。
可以看到,DPU-based JBOF的简单性(直观上看,少了PCIe Switch、NIC和DDR,因为DPU已经自带了这些器件)。因此很好理解,DPU-based JBOF有着更小的功耗。

DPU功耗比x86少得多,但它针对不同市场的卸载有很多。下面这个PPT显示了针对JBOF或者其他存储设备的卸载。DPU将NVMe转换成,不需要ARM处理器参与的、完全硬件化的NVMe over Fabric。只需要ARM处理器参与处理问题或者加载映射表。
对比左边的x86通用处理器方案,性能更好。

根据实验数据,CPU的利用率大约是50%,而ARM的利用率非常小,基本相当于0%。
所以ARM处理器还可以用来添加一些特殊的功能。
比如,在这个平台上,它也可以用来添加GPU、以及做一些新的创新。
演讲者发现,将一些AI数据或者workload移动到存储上对性能改进非常有益,尤其是在RAG场景下。

SuperMicro发现,大规模AI数据中心有四个挑战:
(1)数据大小正在增长:模型训练参数量的逐年增长
(2)混合工作负载:LLM数据管道,顺序、随机、大、小IO的混合带来的存储挑战
(3)对性能的需求:分析和数据挖掘等场景下,GPU集群需要高带宽和低延时的访问数据
(4)高功耗:GPU、CPU等的功耗都在增长,如何控制数据中心的功耗预算非常有挑战性

下面这个PPT演示了Supermicro的JBOF产品。它可以支持36个单端口或双端口的E3.S NVMe SSD或者24个单端口或双端口的U.2 NVMe SSD。
在每个JBOF里可以配置2个GPU和1个DPU。
支持高可用和可维护性。

下面这页PPT展示了Supermicro第五代NVMe JBOF产品的性能。
左边上半部分是传统x86方案,下半部分是使用了BlueFiled3 DPU的JBOF方案。
性能上,带宽两者表现一致,但时延和功耗上,DPU方案更好。

下面这张图展示了Supermicro第五代NVMe JBOF产品的优势。
