IPU / DPU 双雄对决:英特尔 vs 英伟达

可编程网络下班买菜
最近IPU/DPU市场的两大领导者英特尔和英伟达都在公开场合分别宣布了自家的新产品IPU E2000BlueField-3。今天终于有空来八卦一下这两个产品。由于这两个都是ASIC的产品,为了便于比较,这里就不包括那些基于FPGA的IPU/DPU产品了。
首先是在今年二月份的2023 IEEE International Solid-State Circuits Conference (ISSCC)大会上,Intel发布了“An In-depth Look at the Intel IPU E2000”[1]。虽然Intel干货满满介绍了自家芯片的很多细节。但是没有被安排在大会的主题演讲里面,因此关注度和流量都不够,很多人都没有听说过这个宣传。IEEE论文的下载链接放在本文的最后。顺便八卦一下,ISSCC 2023大会的keynotes邀请的行业领袖是AMD的苏妈。依靠TSMC+Chiplet成功翻身,当红CEO苏妈展望了未来10年的高性能计算的挑战和AMD正在进行创新“Innovation for the Next Decade of High-Performance Computing”。国内很多媒体都转发了苏妈的视频演讲。刚刚过去的三月份,英伟达的GTC 2023大会上,黄教主大谈了2个小时的AI,ChatGPT和GPU,当然也没有忘记DPU产品。给了不到2分钟的时间,宣布Bluefield3量产了
下面我们来看看双方的产品吧。Intel这次公开承认这个是co-designed with Google,产品已经在2022年量产了Nvidia说已经量产,并且宣称有Baidu, Coreweave, JD, Tencent, Oracle, Mircrosoft六个客户。国内的头部互联网客户。这些客户都有很多业务部门,而且也都有自研的DPU方案。至于BlueField-3用在哪个业务部门的产品里面,部署了多少台服务器就不清楚了

从双方的产品照片上来看,应该都是全高全长的PCIe x16的卡,占用单插槽厚度。这两个产品都是基于ASIC的产品,为了节省空间,内存和存储都是贴在板子上。因此功耗和卡的厚度上比基于FPGA的DPU产品要有优势。双方都选择了单独使用一个RJ45的电口来提供管理接口。在卡右上角,双方都有额外的供电接口,因此卡的功耗还是要超过PCIe插槽的供电能力。Intel的论文里面自己爆料使用的是TSMC的7nm工艺生产,Nvidia应该也是TSMC的工艺,就不知道是几纳米了。




对比了外部参数,来对比一下内部细节吧。比较巧的是,在2021年的hotchips大会双方也分别介绍了这两款产品[2][3]。从2021年开始对外宣传到量产已经过去2年时间了,加上没有公开的前期的设计时间,一颗ASIC芯片的研发时间至少超过3年。如果加上软件驱动的开发时间,这个周期会更长。后面在Nvidia介绍材料里面可以看到,DOCA的DFA的一些驱动还是Alpha版本阶段。

先看Intel的IPU E2000,功能分为左边网络子系统和右边的计算子系统。网络子系统由PCIe接口部分,RDMA,NVMe,LAN,可编程Packet处理流水线,inline加密,流量整形,200G MAC,56G SerDes组成。PCIe部分支持4个Xeon CPU,也就是说一个IPU可以接4台服务器。支持inline IPSec功能,就是不需要Host和ARM CPU的参与就能直接完成加密报文的处理。可编程的包处理流水线,支持200mpps的处理能力。计算子系统部分,包括了16个3.0Ghz的ARM N1的处理器,3个LP DDR4通道,一个加解密单元。另外还有一个管理单元,用来提供安全启动和芯片相关的管理功能。


在ISSCC 2023的论文中,英特尔介绍了更进一步的内部设计细节。在hotchips资料中没有公开的管理单元,是由2个ARM A53的核完成。另外包括了一个32MB的系统cache。

另外包处理的流水线信息也提供了一个大致的框图,包括包解析parser,包分类部分包括了多种匹配功能,精确匹配excat match,通配符匹配 wildcard match,前缀匹配prefix match等等。最后一部分是报文编辑功能。比较实用的功能应该是修改后的报文,还可以再送回流水线的开头,重新来一次。

Nvidia的Bluefield-2有点像简单的通过一个PCIe switch把一个ConnectX-6 Dx网卡和一个8核的ARM A72处理器连在一起。ARM CPU可以配置为embedded function模式和separated host模式。Bluefield-3相对于Bluefield-2应该是全面升级了,不过PCIe switch的连接方式还是没有太大变化。PCIe升级到5.0,DDR升级到DDR5,ARM核也升级到16个A78,8MB L2 cache,16MB LLC system cache,网络部分也升级到400G的接口。

从下面的图来看,大家整体的设计思路还是比较一致,都是包括计算子系统和网络包处理器子系统。计算子系统大家都是基于ARM的IP,应该就是基于各自对于计算能力需求的理解,成本,产品发布时间和制造工艺来选择。Intel还单独提供了A53的核来做管理平面,这个就体现出了两家对于IPU和DPU的应用场景理解的差别。Intel的IPU全称是Infrastructure Processor Unit,有一个很大的需求是提供服务器的独立管理功能,需要和业务平面进行隔离提供更高的安全性。Nvidia的DPU全称是Data Process Unit,定位是对Host CPU进行加速和卸载,更加注重对服务器上Host CPU的卸载和加速,独立的管理功能的考虑不够。
各家的计算子系统技术上的差异化不大,IPU/DPU硬件上核心差异化的应该是网络子系统部分。Intel和Nvidia是网卡市场占有率最高的两家,因此在网络部分的技术积累还是很深的。在Bluefield-3上,Nvidia引入了DPA加速器。在GTC 2023的大会上,Nvidia介绍这个基于RISC-V的加速器。与基于FPGA的IPU/DPU相比,基于ASIC的IPU/DPU虽然功耗和成本低。但是如果不能提供灵活的可编程能力,就会完全丧失竞争力。上面介绍了Intel是通过可编程流水线和P4来提供灵活的编程能力Nvidia是在数据通道上提供了DPA这种RSIC-V核来进行灵活编程,进一步卸载ARM核上的操作。在软件开发的角度,使用Bluefield-3的应用涉及3个异构的处理器架构,Host CPU(x86/ARM),DPU (ARM),DPA(RSIC-V)。数据处理器流水线涉及两层卸载,Host CPU到ARM,ARM到DPA(RSIC-V),整个软件栈的复杂度应该很高。不过目前看来DPA只通过DOCA DPA SDK来编程,对于开发人员来说屏蔽了很多底层的复杂部分。
DPA加速网络报文处理,其实这就是传统的网络处理器(NP)的做法,不过是把网络处理器里面的专用小核换成了RSIC-V的核。如果回顾一下Nvidia的收购历史就明白了,Nvidia的网络部分是来自于收购的Mellanox,Mellanox于2015年收购EZchip。EZchip是当时最大的网络处理器公司。业界另外一家做DPU的公司Netronome也是宣布使用RSIC-V的核来做DPU。深扒一下历史,会发现Netronome也是来源于分拆后的Intel的网络处理器部门。没想到RISC-V竟然通过这种方式已经在网络通信市场应用起来了。不过Nvidia的RISC-V也是与众不同,16 core,256 threads,每核16个线程,估计是继承了不少GPU core的基因。

Intel的ISSCC 2023的论文里面还发布了一些性能数据,内置的16C ARM N1的SPEC 2017 int跑分是50.3,这个要高于Bluefield-3 16个A78宣称的42,尽管Bluefield-3的A78配的是DDR5的内存,可能是由于IPU配置的32M LLC,而Bluefield只有16MB LLC。

Intel的IPU的网络部分性能能跑到Theoretical Max Rate,这个应该是指200Gbps吧。对于64B的小包就能跑到线速,这个应该是很不错的结果。NVMe卸载的性能是接近100Gbps。


Nvidia没有公开提供的Bluefield-3的性能数据。只有Bluefield-2的OVS-DPDK的性能数据。图中用来对比的x86服务器是AMD Rome架构的64核的7742感觉这个数据看起来有点夸张,不知道Nvidia用了几个Rome核来和Bluefield-2对比。

上搜索了一圈,找到了一篇论文“Performance Characteristics of the BlueField-2 SmartNIC.”[4],公开了Bluefield-2的一些实测数据。“While the host can easily saturate the network link, the SmartNIC’s embedded processors may not have enough computing resources to sustain more than half the expected bandwidth when using kernel-space packet processing.” 简单地说,就是Bluefield-2里面的A72的性能和带宽不够。从ARM核往外发送报文,只能达到50Gbps。A72核的计算能力弱于Host CPU的处理器能力。如果只是简单地把Host CPU的计算卸载到ARM核上,只有少量特定的计算适合做卸载。

ServeTheHome也对比了Bluefield-2的ARM核的计算能力[5],8个A72核也就相当于4个Intel N5105(Jasper Lake Atom)的核。这也印证了Bluefield-2上的计算核心的算力不够的问题。

聊完了芯片硬件部分,暂时无法把这两个产品分出高下。芯片产业的另外一个更核心的竞争力,其实是软件的生态。黄教主一直宣称Nvidia是一家软件公司,CUDA就是GPU最核心的护城河。Intel和Nvidia也都在构建自己的软件生态。Intel打包了DPDK/SPDK等众多的开源软件,创建了IPDK社区。Nvidia也把DPDK作为核心组件,来构建DOCA。DOCA 之于 DPU 正如 CUDA 之于 GPU。但是众多的IPU/DPU用户是不希望被任何一个生态绑定。

扒完了技术部分,其实IPU/DPU另外一个能否大规模应用的因素是成本。目前Intel IPU和Nvidia Bluefield-3都没有公开的价格。NVIDIA BlueField DPU 能效白皮书里面透露了一些Bluefield-2的市场目录价。一个双100G端口的Bluefield-2卡(包含16G内存)是1500美元,Bluefield-3应该会更贵。

该白皮书里面显示,DPU加上软件后的成本却是2840美元,不知道这里面额外的1340美元的软件成本是不是都来自VMware的成本。



[1] N. Sundar, B. Burres, Y. Li, D. Minturn, B. Johnson and N. Jain, "9.4 An In-depth Look at the Intel IPU E2000," 2023 IEEE International Solid- State Circuits Conference (ISSCC), San Francisco, CA, USA, 2023, pp. 162-164, doi: 10.1109/ISSCC42615.2023.10067333.
URL: https://ieeexplore.ieee.org/document/10067333

[2] Intel’s Hyperscale-Ready SmartNIC for Infrastructure Processing,  Bradley Burres, Intel
https://hc33.hotchips.org/assets/program/conference/day1/Intel%20TLM%20Hotchips%202021%20-%20Mt%20Evans%20R2a%20-%20Final%20version%202.pdf

[3] NVIDIA DATA Center Processing Unit (DPU) Architecture,Idan Burstein, NVIDIAhttps://hc33.hotchips.org/assets/program/conference/day1/HC2021.NVIDIA.IdanBurstein.v08.norecording.pdf

[4] Liu, Jianshen et al. “Performance Characteristics of the BlueField-2 SmartNIC.” ArXiv abs/2105.06619 (2021): n. pag.
https://arxiv.org/abs/2105.06619#

[5]https://www.servethehome.com/nvidia-bluefield-2-dpu-on-geekbench-5-arm-raspberry-pi-intel-atom/