当前位置: 首页 > 科技赋能

算力经济下DPU芯片的发展机遇

时间:2024-05-20 01:57:02 科技赋能

01算力已成为先进生产力。

当前承载计算能力的基础设施是各种规模的数据中心,从几十个服务器节点的小型企业级计算中心到数万个节点的巨型数据中心,为应用提供存储、软件、计算平台等服务通过云计算分层客户。

这一生态系统直接承载着全球数十万亿美元的数字经济,随着大数据、5G、人工智能等技术的发展,其对全球服务业、工业、农业的渗透率不断提高。

计算能力不再只是一个技术指标,它已经成为先进生产力的代表。

算力源自芯片,最终通过基础软件的有效组织释放到终端应用。

目前,数据中心的核心计算芯片包括CPU、GPU、FPGA和少量ASIC,其中各种通用CPU的比例仍然占据绝对优势。

数据显示,目前CPU年出货量超过1亿颗,其中数据中心使用的服务器端CPU出货量约1万颗,PC(包括台式机、工作站等)出货量约1万颗。

约2.6亿台。

仅今年第四季度,全球基于ARM IP的芯片出货量就达到67亿颗的历史新高; GPU的出货量也非常可观,超过了4亿块(包括英特尔和AMD的集成核显),其中大部分用于各种终端设备,例如大量的消费和工业电子产品。

在云中,高性能CPU和GPU是两种主要的计算芯片,也是规模最大、单价最高、应用环境最复杂的芯片。

02 负载分化:从内存计算到网络计算,有大量的任务可以从CPU上卸载。

计算的两个核心要素:数据和计算。

通过数据和计算之间的复杂存储层来平衡带宽、延迟和容量。

、成本等因素,试图让计算芯片对数据“随时可用”,但这在物理上是不可能实现的。

将数据从生产端或存储端移动到计算节点也需要时间和精力。

为了将数据传输到完成布尔逻辑的计算单元,已经消耗了90%以上的能源。

过去50年来,乘着摩尔定律的势头,单个计算芯片的处理性能呈指数级增长。

然而,存储器访问带宽受到引脚数量和时钟频率的限制,只能线性增长。

相对而言,数据传输的开销不断被放大,端到端的延迟变得越来越难以控制,“喂饱”处理器也变得越来越困难。

为了不浪费处理器计算能力,数据传输的延迟和开销必须通过各种共享机制相互隐藏——这本身就是一种开销。

一个简单的想法就是把数据靠近计算芯片,或者说把计算芯片靠近数据,物理上靠近。

于是出现了“Process In Memory (PIM)”的概念,也称为“In-MemoryComg”,内存计算。

例如,在存储控制器中设置一些地址计算、地址翻译、校验码计算、查找表等。

但这本质上是将部分 CPU 负载计算卸载到内存控制器。

事实上,CPU并没有完全“嵌入”在内存中,但可以看作是内存计算的间接实现。

还有一种更依赖于新设备技术的“存储与计算一体化”。

例如,非易失性存储单元的阻抗(或导纳)被用作存储的数据。

当输入数据(电压)施加到一端时,输出是两者的乘积。

,然后经过模拟信号处理和模数转换,得到CPU可以处理的二进制数据;当这些节点被组织成一个数组时,就相当于完成了两个向量的乘法累加(MAC)运算。

另一种存储与计算融合的方式是“近内存计算”,主要是在芯片上放置更多的存储设备(包括非易失性存储设备)。

可以看作是一种集成片上大内存作为一级缓存的方法。

这种方式更多是由存储技术和集成技术驱动的。

例如,高带宽存储器(HBM)已经开始被采用。

得益于3D集成技术,单个存储堆栈的带宽可以达到GB。

/s,相比GDDR5 DRAM的28GB/s,有近4倍的提升!本质上,CPU的存储层次之所以发展为多层、多层次,就是为了让处理器更贴近数据。

这些技术都是本地计算和存储的融合技术,即针对单机、单节点进行优化。

如果将数据中心视为一台计算机,俗话说“数据中心就是一台计算机”,那么计算的分布就有了新的可能性。

虽然数据中心在逻辑上可以看作是一台计算机,但其中的节点需要通过网络互连。

计算的分配、存储的共享、硬件资源的虚拟化等都将成为整合数据中心资源的开销。

数据中心的CPU和GPU并不是为数据中心的工作负载而设计的,例如网络协议处理、存储压缩和数据加密。

网卡设备在数据中心中起着关键作用。

既然网卡可以处理物理层和链路层的数据帧,为什么不继续将网络层和部分应用层的计算卸载到网卡上呢?因此,网卡从只负责节点之间的“互连”,转变为帮助CPU处理一些底层数据处理,名称也从NIC(Network Interface Card)升级为SmartNIC。

网卡也从单纯的处理数据帧,变成了具有更多计算服务的“小型服务器”,拓展为真正的“网内计算”。

无论是内存计算、近内存计算还是网内计算,最终的目标都是对数据的存储、传输、计算环节进行针对性的处理,以提高系统的整体效率。

03 计算组织:从“端-云”融合到“端-边-云”融合 为了承载AIoT、自动驾驶、V2X、智慧城市、智慧安防等新兴产业,计算组织也经历了许多新的变革变化。

从端云融合到端边云融合,比如未来的自动驾驶,汽车将成为边缘的载体; 5G时代,5G基站也可能成为边缘节点,云计算的部分计算功能将分散到边缘计算节点,以获得更及时的响应时间,节省网络带宽。

除了边缘计算之外,一些研究人员甚至提出了设备和云之间的“雾计算”和“雾计算”,不断分层计算以获得更好的服务。

质量好,成本低。

类似于国家的行政治理结构:省、市、区、县等,上级负责所辖下级的总体规划,下级负责具体实施;下层可以处理的业务不需要推到上层。

这样就可以将计算合理有序地分配到各个计算层级。

每个终端业务不需要关心哪一个“云”在提供服务,也不需要关心有多少层“云”,也不需要关心是“云”还是“雾”提供服务。

算力将像电力一样,通过端边云一体化系统“传输”给用户。

电力来自哪个发电站并不重要。

这种计算组织结构的变化直接影响计算指标的演变:从高性能到高效率,再到高吞吐量,最后到高生产力计算。

04 架构:通用与专用的结合,催生了“X”PU的新机遇。

目前,各类CPU(包括服务器、桌面、移动、工控及各类嵌入式场景等)年出货量超过100亿颗。

,世界上平均每个人可以消耗3个CPU,基本上可以认为CPU已经成为一种无处不在的设备。

建立在CPU之上的软硬件生态系统,无论是x86还是ARM,自然而然地成为了整个计算系统的载体,而CPU则成为了这个系统的主角。

随着图形图像处理的需求,GPU在20世纪90年代出现,并逐渐发展成为现在的GPGPU。

随着深度学习算法的爆炸式增长,GPU在图像处理之外找到了一个空间——神经网络模型的训练。

到目前为止,神经网络训练一直由 GPU 主导。

伴随着人工智能的第四次浪潮,全球GPU领先厂商NVIDIA的市值于2018年8月超越X86 CPU龙头英特尔,成为市场领先者。

GPU也成为下一代数据中心计算芯片的另一个重要角色。

恰逢摩尔定律放缓,专用架构(DSA)技术领域的代表GPU终于成为数据中心的核心计算芯片之一。

DSA的技术路线得到了业界的广泛认可。

问题是,谁将成为下一任DSA代表? NVIDIA在2017年就公布了对此问题的看法,他认为未来CPU、GPU、DPU将成为数据中心的三大重要计算芯片。

这与我们两年前的看法不谋而合。

我们认为CPU的优势在于它的通用性和它所承载的复杂的业务生态系统,它定义了软件生态系统和系统可用性。

GPU作为流媒体处理的核心,将继续向AR、VR方向发展。

业界预测,5G时代,90%的数据将是视频、图片等非结构化数据,GPU将成为处理此类负载的主要引擎。

DPU将成为SmartNIC的下一代核心引擎,集软件定义网络、软件定义存储、软件定义加速器为一体,解决协议处理、数据安全、算法加速等问题。

做得好,GPU“做不到”计算负载我们也大胆预测,未来数据中心的计算引擎将不仅仅是CPU、GPU和DPU同时使用的场景。

网卡芯片,却成为“软件定义硬件”的重点,同时DPU市场也不会局限于服务器端,也会出现在边缘侧,比如V2X场景。

智能驾驶,用于解决实时视频结构化和传感器数据融合,一些消费级DPU产品用于在隐私保护等服务方面提高终端的用户体验 05 DPU如何革命性的下一个。

新一代计算基础设施DPU是DataProcessingUnit的缩写。

DPU将作为CPU的卸载引擎,将CPU的计算能力释放给上层应用程序。

以网络协议处理为例,线速处理10G网络大约需要4个Xeon CPU核心。

也就是说,仅网络数据包处理就可以占用8核高端CPU一半的计算能力。

如果考虑40G、G高速网络,性能开销就更难以承受。

亚马逊将这些费用称为“数据中心税”——在运行业务程序之前访问网络数据所占用的计算资源。

AWS Nitro产品系列旨在将所有数据中心开销(为虚拟机、加密解密、故障跟踪、安全策略和其他服务程序提供远程资源)从CPU卸载到Nitro加速卡上,这将释放30%的资源原来用于上层应用程序的用途。

算力用来交“税”! DPU 将成为新的数据网关,将安全和隐私提升到一个新的水平。

在网络环境中,网络接口是理想的隐私边界,但加解密算法的成本非常高,如国密标准非对称加密算法SM2、哈希算法SM3和对称分组密码算法SM4等。

如果使用CPU来处理,只能加密少量的数据。

未来,随着区块链承载的业务逐渐成熟,运行共识算法POW、签名验证等也将消耗大量的CPU算力。

而这些都可以通过固化在DPU中来实现,甚至DPU也会成为信任根。

DPU将成为存储的入口,实现分布式存储和远程访问的本地化。

随着SSD的性价比逐渐被人们所接受,将部分存储迁移到SSD设备上已经成为可能。

传统机械硬盘的SATA协议并不适合SSD存储。

因此,可以轻松地通过本地 PCIE 或高速网络将 SSD 连接到系统。

成为必选的技术路线。

NVMe(Non Volatile Memory Express)是一种用于访问 SSD 存储的高速接口标准协议。

可以采用PCIe作为底层传输协议,充分发挥SSD的带宽优势。

同时,在分布式系统中,NVMe over Fabric协议还可以扩展到InfiniBand或TCP互连节点,实现存储共享和远程访问。

这些新的协议处理可以集成在DPU中,实现对CPU的透明处理。

此外,DPU可能会承担各种互连协议控制器的角色,以在灵活性和性能之间实现更好的平衡。

DPU将成为算法加速的沙箱和最灵活的加速器载体。

DPU 并不是完全固化的 ASIC。

在CXL、CCIX等标准组织倡导的CPU、GPU、DPU等数据一致性访问协议的铺垫下,DPU编程障碍将进一步扫清。

与FPGA等可编程器件相结合,可定制的硬件将有更大的发展空间,“硬件化软件”将成为常态,异构计算的潜力将因各种DPU的普及而得到充分释放。

相应的DPU可能会出现在出现“杀手级应用”的领域,比如OLAP、OLTP等传统数据库应用,或者智能驾驶等新兴应用。

06 中科玉树的DPU解决方案:KPU1+KPU2+...=DPU 鉴于上述认识,中科玉树已经在这个赛道上布局了。

玉树采取以算法加速为核心、网络加速为切入点的策略。

以清晰的行业应用为驱动,构建直接面向应用的DPU。

先开放单点,然后根据需要扩展的策略。

现有的DPU一般有两种类型:1)基于通用众核的同质众核DPU,类似于早期设计用于处理数据包的网络处理器,例如Br??oadcom的Stingray架构,它使用多核ARM作为核心是赢得群众。

得益于通用处理器核心(大部分是ARM系列),可编程性比较好,但应用针对性不够,对特殊算法和应用的支持相对通用CPU没有优势。

2)基于专用核心构建异构核心阵列。

这种结构针对性很强,性能最好,但牺牲了一些灵活性。

现有的最新产品趋势是两者的折衷,专用核心的比例越来越大。

NVIDIA最新的BlueField2系列DPU的结构包括4个ARM核心加上多个专用加速核心区域。

Fungible DPU 包含 52 MIPS 小型通用内核,但还包含 6 个大类专用内核。

中科御数的DPU是数据平面领域的专用处理器,以KPU为计算核心,高速传输和存储汇总为接口,弱泛化控制。

DPU顶层结构的核心是四种KPU的异构核心阵列,分别处理网络协议、OLAP\OLTP处理、机器学习、安全加密计算核心。

与Broadcom、Fungible等厂商不同,我们专注于异构核心,即以定向算法加速为核心,玉树提出了KPU架构来组织异构核心。

在KPU架构下,玉树提出了L2/L3/L4层完整的网络协议处理,并提出了直接面向OLAP和OLTP的数据查询处理核心,而不是采用原来的基于众核的架构。

这条路线更接近NVIDIA的技术路线,但更注重异构核心的使用。

看似牺牲了一些通用核心的可编程性,但换来的却是更高效的处理效率、更直接的使用接口、更精简的运行时系统和更好的虚拟化支持。

理想的DPU必须与CPU不同,这样才能更好地与CPU互补。

一般的计算不应该也不需要卸载到DPU,而能够卸载到DPU的负载当然也不需要基础算子层面的计算控制。

中科玉树的DPU顶层架构支持玉树的重要产品线之一:SWIFT系列网络加速卡。

SWIFT?-M是KPU-SWIFT?网络加速产品系列中一款超低延迟的NVMe Over TCP网络加速卡。

它基于KPU架构,自主开发的全硬件TCP/IP协议簇。

该方案集成了TCP、UDP、ARP、ICMP、IP等完整的协议处理模块,并配备玉树高性能PCIe驱动和NVMe协议的软件接口适配,从而实现功能齐全、极速的NVMe over TCP网络端。

系统。

SWIFT?-M集成了丰富的系统运行状态监控功能,具有硬件处理的TCP包传输、数据重传、乱序重排、ping等完整功能,解决10G/G高速NVMe-中的网络协议处理场景。

解决了CPU资源占用高、解析慢的痛点,大幅提升系统吞吐量,优化远程存储访问效率。

07 未来展望:构建专用处理器体系结构的几个关键点。

专用处理器和通用处理器是处理器发展的两个互补方向。

虽然单一类型专用处理器的市场远小于通用处理器的市场,但多种类型专用处理器的市场总和将远远大于通用处理器的市场。

而且,专用处理器的发展将在很多增量应用市场中具有绝对的性能优势,并且较少受到通用计算的生态限制,这将有助于专用架构逐渐扩展到覆盖更长期的应用。

在过去60年的处理器芯片发展历程中,通用处理器的发展在前50年占据了处理器芯片的市场份额。

相信未来30年,随着数据的爆炸和“端与云”“一体”计算范式的持续渗透,将形成通用处理器与专用处理器并重的新局面是平行的。

在今年 7 月的 COMMUNICATIONS OF THE ACM 中,有一篇文章提出了一个新概念:“ASIC Clouds”,全文标题为“ASIC Clouds: Specializing the Datacenter for Planet-Scale Applications”。

这里的“ASIC”实际上是各种专用处理器的表现形式。

我们相信专用处理器将迎来前所未有的增长机会。

我们认为,构建专用处理器体系结构有以下几个关键点: ▲“数据平面”的计算架构。

专用计算架构和通用计算架构的地位不同。

专用计算竞争的焦点是数据平面,而通用计算架构则有不同的定位。

计算竞争的焦点是控制平面。

专业计算就像建造一辆赛车,目标是快,重点是根据赛道类型确定赛车的结构;通用计算就像建造一辆民用汽车,目标更加多元化,不仅要考虑不同路况下的可用性,还必须考虑性价比、代际兼容性。

因此,按照通用CPU的标准来看待专用XPU可能并不合适,甚至可能会限制专用处理器的发展。

▲集成创新技术的计算架构的范围不仅仅是狭义的处理器芯片,还包括相应的存储、传输、集成技术等,是一个系统化的概念。

由于其“专用”属性,专用计算在融合新技术方面更具优势。

例如,引入高速非易失性存储(NVMe),利用“NVMe oF”技术构建更高效的分布式存储系统;直接集成主机内存连接到PCIe设备端,建立更大、更快的远程直接内存访问(RDMA);集成HBM以支持更大的片上数据集和更高效的数据平面操作;将神经网络计算融入网内计算,透明赋能需要推理的场景。

▲特定领域的描述语言应用可以用明确的语言进行描述,特殊计算也不例外。

应用描述层是专用计算架构的边界:描述层之上是客户的实际应用,描述层以下是专用计算系统的定制部分。

整个系统的参考边界从传统的ISA(指令集)提升到DSL(领域特定语言)。

例如,P4编程语言是SDN的领域特定语言,专门用于定义路由器和交换机如何转发数据包,是数据平面的编程语言。

网络处理器是 ARM、MIPS 还是 X86 并不重要。

目前的深度学习框架如TensorFlow,实际上都提供了一套完整的DSL,定义了深度学习模型的结构,描述了模型训练方法;还有面向数据库的SQL,它本身是一种声明式(Declaritive)DSL编程语言,有望成为新型专用处理器设计的参考边界。

▲先纵向耕耘,后横向拓展。

专用计算架构行业的一个普遍共识是“碎片化”问题,这对“一刀切”的ASIC商业模式提出了挑战。

传统上,碎片化意味着单一产品线难以规模化,稀释了芯片研发的一次性巨额投资,即所谓的高NRE成本。

一项具有商业价值的技术,必须建立在一个“技术闭环”的基础上:研发、使用、反馈、再开发和改进,进而扩大使用范围……技术只有投入使用,才能体现出来。

它的价值,只有有了使用价值才能够商业化,才能够完成从技术闭环到商业闭环的演进。

技术闭环的形成需要集中火力,需要全链条主动行动才能铺好。

碎片化不是“专用”障碍,而应该是专用技术路线可以充分发挥的优势。