星云智联如何看待从网卡到DPU和智能网卡?

 

近年来,DPU在国内外掀起一片技术狂潮。国外有Fungible、NVIDIA、Intel、Marvell、Pensando(已被AMD收购)、Broadcom等公司纷纷加入,国内有一批新创企业也通过自身的技术积累进入了DPU新赛道。

 

 

    DPU是何物?   

 

 

作为首先提出DPU概念的Fungible公司将DPU侧重于解耦数据中心内计算与存储(Enabling hyper disaggregation of compute and storage resources across data center scales)【1】,以解决数据中心横向业务扩展中低效的计算和低效的数据交换的问题。

 

作为将DPU概念推广化的NVIDIA将可编程的多核CPU、高性能的网络接口、灵活可编程的加速引擎集成在一起,把DPU作为一个拥有计算、存储、网络的片上系统(System on a chip that combines: Industry-standard, high-performance, software-programmable multi-core CPU ; High-performance network interface and Flexible and programmable acceleration engines)【2】,通过对各种高级网络、存储和安全业务进行卸载、加速和隔离,将DPU视为云、数据中心或边缘计算等环境中的各种工作负载提供安全加速的基础设施【3】

 

Intel也提出了类似的概念,IPU(Infrastructure Processing Unit),官方描述为一种可编程网络设备,可以安全地加速和管理数据中心的基础设施功能与可编程硬件,旨在帮助云与通信服务提供商减少相关任务对中央处理器(CPU)的资源开销需求,并进一步释放相关平台的性能潜力。(Programmable network devices that intelligently manage system-level resources by securely accelerating networking and storage infrastructure functions in a data center.)【4】

 

在以“计算为中心”的数据处理架构将向着以“数据为中心”的数据处理架构演进的路上,星云智联与业界有着相同的共识。DPU作为数据交互的核心单元,将数据中心内部各种资源有机的连接起来,形成统一的整体。各种计算资源、存储资源、网络资源甚至特殊的硬件资源都可以在DPU的加持下完全池化,为数据中心业务提供完备的横向扩展能力。因此,DPU也被誉为在未来计算领域,是继CPU、GPU之后的“第三颗主力芯片”。

 

 

   DPU何以有如此巨大的吸引力?   

 

 

随着云计算、边缘计算的发展,上层业务对CPU的算力要求也越来越高,而相应的对高速数据交换的要求也越来越高。但是随着摩尔定律和登纳德缩放定律的失效,CPU计算能力的增速低于网络传输速率的增速,而且差距持续扩大。所以,在传统数据中心中再使用CPU来处理复杂的网络业务就显得力不从心;同时,复杂软件协议栈还会大量占用数据中心的计算资源,增加数据中心的运营成本。所以DPU应运而生,不仅将通信能力大幅提升,而且还降低了CPU在基础通信中的“无效算力”,实现了数据中心业务运营的降本增效。

 

2013 年,亚马逊云AWS研发团队推出了第一款Nitro 卸载卡,将网络业务处理卸载到硬件中;2014 年,将 EBS 存储卸载到硬件中;2017 年,将控制面和剩余的 I/O卸载,并引入了一个新的管理程序,形成完整Nitro系统。Nitro 系统让亚马逊云有能力提供100 Gbps 增强型以太网网络的云,支持更高吞吐量或受网络限制的工作负载(如 HPC 应用程序),并提供越来越多的计算、存储、内存和网络选项。

 

2017年,阿里云的研发团队推出神龙云服务器和 MOC卡,实现了虚拟化流量的卸载和高效的网络协议卸载;大幅提升了网络、存储的性能。今年,阿里云又推出了全新的云基础设施处理器——CIPU(Cloud Infrastructure Processing Units),专门用于连接服务器内硬件和云上虚拟化资源。

 

虽然公有云厂家自研芯片名称不同,但都属于DPU概念的范畴。但DPU不仅仅应用在公有云领域,其他如:私有云、边缘云、车云计算(Vehicular Cloud Computing)、HPC/AI、机器视觉等其他所有需要通信性能提升的业务领域和场景都可以广泛使用。由此可见,将DPU称为“第三颗主力芯片”并不夸张。

 

 

   DPU、SmartNIC、NIC的区别是什么?   

 

 

目前业界对NIC的认知还是非常清晰的,但是对于SmartNIC和DPU的含义,各厂家的认识各不相同。

 

其实前面我们已经解释了DPU的涵义,下面我们将从技术发展、功能和应用场景的角度来进一步阐述SmartNIC-DPU的不同:

 

数据中心算力性能的不断提升催生了计算节点带宽需求的增长,带宽需求的增长又催生了功能和性能更加丰富的网络接入设备。

 

在GE和10GE时代,网络接入设备还是以传统网卡NIC为主,NIC仅提供网络接入功能,网络报文基本由CPU进行处理,此时网卡只是为CPU服务的一个网络接口。值得注意的是目前NIC也已经支持部分的网络虚拟化功能,如SR-IOV。

 

在25GE时代,SmartNIC渐渐成为主流,SmartNIC将原本在CPU上处理的复杂协议栈卸载下来,为计算节点提供网络加速、存储加速和安全加速的功能,同时具备了部分的可编程能力以应用于不同的业务场景,于此同时降低CPU负荷,为数据中心降低无效的算力税。

 

随着应用场景的进一步丰富,在裸金属、高性能计算、AI集群等场景下,DPU集成了网络控制面、存储前端、在网计算等功能,降低通信延时,提升整体计算效率,成为一个独立的计算单元。

 

从应用场景的角度,SmartNIC可提供裸金属、虚拟机、容器的网络虚拟化和网络加速、安全加解密等功能;但在裸金属云盘挂载,XPU之间数据交换,集合通讯(Collective Communications)等业务场景却只能由DPU来完成,因为只有DPU具备独立的操作系统,可以将数据中心内各种资源有机的连接在一起。

 

所以虽然SmartNIC和DPU可能有着相似或者相同的物理形态,但其根本性差别在于是否是个独立的计算单元。

 

星云智联预测未来智能网卡将会逐渐取代目前的普通网卡,成为市场上主要的网络接入适配器。而DPU将会应用在以数据中心为主的大型网络中,发挥其高性能、可编程的网络通信能力和资源虚拟化能力。

 

 

 

 

参考链接:

【1】https://www.fungible.com/product/dpu-platform/

【2】https://blogs.nvidia.com/blog/2020/05/20/whats-a-dpu-data-processing-unit/

【3】https://www.nvidia.cn/networking/products/data-processing-unit/

【4】https://www.intel.sg/content/www/xa/en/products/network-io/smartnic.html

 

 

新闻中心

 

获取星云智联最新动态和新闻资讯