找回密码
 立即注册
搜索

[网络] 什么是DPU,DPU的技术路线如何演进?

[复制链接]
智慧谋略 发表于 2023-6-10 02:26:26 | 显示全部楼层 |阅读模式
DPU 即数据处理器(Data Processing Unit),用于优化卷积神经网络,广泛应用于加速深度学习推理算法。
当 CPU 算力释放遇瓶颈,DPU 能够卸载 CPU 的基础层应用(如网络协议处理、加密解密、数据压缩等),从而释放 CPU 低效应用端的算力,将 CPU 算力集中在上层应用。区别于 GPU,DPU 主要用于对数据解析与处理,提高数据接发的效率,而 GPU 则是专注于数据的加速计算。因此,DPU 将有望成为释放 CPU 算力新的关键芯片,并与 CPU、GPU 形成优势互补,提高算力天花板。
DPU 还具有高性能网络接口,能以线速或网络中的可用速度解析、处理数据,并高效地将数据传输到 GPU 和 CPU。
英伟达收购 Mellanox 后,凭借原有的 ConnectX 系列高速网卡技术,推出其 BlueField 系列 DPU,成为 DPU 赛道的标杆。英伟达首席执行官黄仁勋也曾表示:「DPU 将成为未来计算的三大支柱之一,未来的数据中心标配是『 CPU + DPU + GPU 』。CPU 用于通用计算,GPU 用于加速计算,DPU 则进行数据处理。」
当下的 DPU 的市场,已经成为各个巨头和初创公司的必争之地,除英伟达等企业开始布局 DPU 产业外,阿里巴巴、华为在内的各大云服务商也逐渐跻身 DPU 行业。其他还有芯启源、大禹智芯、星云智联、中科驭数、云豹智能等公司。

AI 应用场景的丰富带来众多碎片化的需求,基于此适配各种功能的处理器不断衍生。再来看一看以下几种 「X」PU。

GPU
GPU 即图形处理器(Graphics Processing Unit),采用数量众多的计算单元和超长的流水线,擅长进行图像处理、并行计算。
对于复杂的单个计算任务来说,CPU 的执行效率更高,通用性更强;而对于图形图像这种矩阵式多像素点的简单计算,更适合用 GPU 来处理,也有人称之为人海战术。而 AI 领域中用于图像识别的深度学习、用于决策和推理的机器学习以及超级计算都需要大规模的并行计算,因此更适合采用 GPU 架构。

多核 CPU 与 GPU 的计算网格(图中绿色方格为计算单元)
CPU 和 GPU 还有一个很大的区别就是:CPU 可单独作用,处理复杂的逻辑运算和不同的数据类型,但当需要处理大量类型统一的数据时,则可调用 GPU 进行并行计算。但 GPU 无法单独工作,必须由 CPU 进行控制调用才能工作。
在 AI 计算领域英伟达的 GPU 几乎占到市场的绝大部分,但近几年也有不少国产企业进军高端 GPU,比如沐曦首款采用 7nm 工艺的异构 GPU 产品已流片、壁仞前不久也发布了单芯片峰值算力达到 PFLOPS 级别的 BR100,还有燧原科技、黑芝麻、地平线等公司都在向高端 GPU 发力。
TPU
TPU 即张量处理器(Tensor Processing Unit)是谷歌专门为加速深层神经网络运算能力而研发的 ASIC 芯片,专用机器学习的人工智能加速处理器。
AI 系统通常涉及训练和推断过程。简单来说,训练过程是指在已有数据中学习,获得某些能力的过程;而推理过程则是指对新的数据,使用这些能力完成特定任务(比如分类、识别等);推理是将深度学习训练成果投入使用的过程。
有老话言,万能工具的效率永远比不上专用工具。TPU 与同期的 CPU 和 GPU 相比,可以提供 15-30 倍的性能提升,以及 30-80 倍的效率(性能/瓦特)提升。此外,在 TPU 中采用 GPU 常用的 GDDR5 存储器能使性能 TPOS 指标再高 3 倍,并将能效比指标 TOPS/Watt 提高到 GPU 的 70 倍,CPU 的 200 倍。
2016 年 TPU 消息刚刚公布时,谷歌资深硬件工程师 Norman Jouppi 在谷歌 Research 博客中特别提到,TPU 从测试到量产只用了 22 天,其性能把人工智能技术往前推进了差不多 7 年,相当于摩尔定律 3 代的时间。
IPU
IPU 即图像处理单元(Intelligent Processing Unit),可以从图像传感器到显示设备的数据流提供全面支持,连接到相关设备,比如:摄像机、显示器、图形加速器、电视编码器和解码器。相关图像处理与操作包括传感器图像信号处理、显示处理、图像转换等,以及同步和控制功能。 采用的是大规模并行同构众核架构,同时将训练和推理合二为一,为 AI 计算提供了全新的技术架构,兼具处理二者工作的能力。
IPU 是英国 AI 芯片创业公司 Graphcore 率先提出的概念,Graphcore 的第一代 IPU 如今已在微软 Azure 云以及 Dell-EMC 服务器中使用,为 AI 算法带来了飞跃性的性能提升,也为开发者带来更广阔的创新空间及更多创新机会。
目前,IPU 正在成为仅次于 GPU 和谷歌 TPU 的第三大部署平台,基于 IPU 的应用已经覆盖包括自然语言处理、图像/视频处理、时序分析、推荐/排名及概率模型等机器学习的各个应用场景。
2021 年,英特尔推出了 IPU 技术,近日又和谷歌共同设计了新型定制基础设施处理单元(IPU)芯片 E2000,代号为「Mount Evans」,以降低数据中心主 CPU 负载,并更有效和安全地处理数据密集型云工作负载。

NPU
CPU 和 GPU 的制造成本较高,功耗也比较大,加之 AI 场景下需要运算的数据量与日俱增,一种针对神经网络深度学习的高效智能处理器应运而生,也就是 NPU。
NPU 即神经网络处理器(Neural network Processing Unit),它是用电路模拟人类的神经元和突触结构。用于加速神经网络的运算,解决传统芯片在神经网络运算时效率低下的问题,特别擅长处理视频、图像类的海量多媒体数据。
与 CPU、GPU 处理器运行需要的数千条指令相比,NPU 只要一条或几条就能完成,且在同等功耗下 NPU 的性能可以达到 GPU 的 118 倍,因此在深度学习的处理效率方面优势明显。NPU 目前较多地在端侧应用于 AI 推理计算,在云端也有大量运用于视频编解码运算、自然语言处理、数据分析,部分 NPU 还能运用于 AI 的训练。
比如在手机 SoC 中,CPU 是负责计算和整体协调的,而 GPU 是负责和图像有关的部分,NPU 负责和 AI 有关的部分,其工作流程则是,任何工作都要先通过 CPU,CPU 再根据这一块工作的性质来决定分配给谁。如果是图形方面的计算,就会分配给 GPU,如果是 AI 方面的计算需求,就分配给 NPU。
NPU 具体的应用有:基于人脸识别的考勤机、基于 DHN(深度哈希网络)的掌纹识别、基于图像分类的自动垃圾分类、自动驾驶汽车、自动跟焦摄像机、监视系统等。
2014 年中科院的陈天石科研团队发表了 DianNao 系列论文,随即席卷了体系结构界,开启了专用人工智能芯片设计的先河,后来中科院旗下的寒武纪科技推出了其第一代 NPU 寒武纪 1A,并用在了华为麒麟 970 芯片中,华为也推出了自研的基于 DaVince 架构的 NPU,阿里则推出了「含光」架构的 NPU。
随着芯片构造方式的变化,大量异构处理器方案也不断衍生,每个芯片都对处理器性能、优化目标、所需的数据吞吐量以及数据流做出了不同的选择。在这几大类处理器芯片中,IPU 与 DPU 发展速度领先。随着 5G 边缘云、自动驾驶和车路协同、金融计算等带来越来越多的数据量,各种「X」PU 的市场价值都在不断攀升。

 楼主| 智慧谋略 发表于 2023-6-10 02:27:16 | 显示全部楼层
这两年,关注ICT的小伙伴们一定被DPU这个词频繁“骚扰”。
到底什么是DPU,它与我们常说的CPU、GPU有啥区别呢?

今天我们就来聊聊DPU的前世今生。
▉ 到底什么是DPU?
DPU 的英文全称叫做 Data Processing Unit,与CPU只有一字之差,它们有何区别呢?
对于CPU我们都了解,它为数据中心提供源源不断的算力。
但是随着数据中心的发展,CPU不仅需要提供强大计算能力,还要提供数据中心的虚拟化、网络、存储以及安全等方面的管理,这就让数据中心的CPU不能物尽其用。

例如,你买了100核的CPU,只能用90个核,
其他10个核去哪里了?
跑了一堆数据中心的软件,安全,存储,管理等等。
那么这些额外10个核的开销部分就造成了一些浪费。相当于花了100块钱,只有90块钱被用在了计算上。
为了提供数据中心的TCO(总拥有成本),那么就需要一个专门干脏活累活的角色。
这个时候DPU就出现了。DPU就是来分担CPU在数据中心中除了计算方面其它工作的。

如果你还不理解DPU的作用,那我举个例子来说明一下。
就像做快餐一样,以前需求比较少,厨师在店里将主食,菜,配料等都搭配好了,炒好了,才会给到送餐人员的去送到客户手里。
但是随着客户的需求越来越多,都由厨师在店里制作完成就会浪费很多时间,这个时候呢,厨师只负责制作将快餐的材料准备好了就行。由送餐人员在送餐的过程中把菜加热好,然后送到客户手中,就会节省厨师的很多时间。
送餐人员承担了更多的处理工作,就相当于DPU的作用。DPU是对CPU工作的一个补充,从而让数据中心的工作更细分,效率更高。
▉ 聊聊DPU的发展史?
DPU这个概念是在2020年出现的,那一年,NVIDIA正式推出了两款 DPU 产品:BlueField-2 DPU 和 BlueField-2X DPU 。

其实在推出这两款产品之前,与DPU类似的功能产品就已经在数据中心中开始逐渐被使用。
我们从智能网卡说起。
当时,为了降低CPU在数据中心的额外消耗,来自以色列的Mellanox公司提出了 Smart NIC (智能网卡)的概念。
这个智能网卡除了能完成标准网卡所具有的网络传输功能之外,还提供内置的可编程、可配置的硬件加速引擎,在提升应用的性能和大幅降低CPU在通信中的消耗。
例如,在虚拟化的环境中,CPU需要运行OVS(Open Virtual Switch)相关任务,同时还要处理存储、数据包的在线加解密或离线加解密、数据包深度检查、防火墙、复杂路由等操作,这些操作导致CPU性能不能发挥到最佳。
智能网卡的出现,为解决额外消耗问题提供了新的思路。
我们可以通过智能网卡来将OVS操作从CPU卸载下来,并完成存储加速、数据加密、深度包检测和复杂路由等各种功能,将花费在处理这些工作负载上的大量的CPU周期返回给主机CPU,同时解决了不同业务之间的冲突问题,大幅提升了各项业务的性能,也确保了服务器CPU能为应用提供最大的处理能力或者提供更多的虚拟机(VM)服务,创造更大的价值。

正是看到了智能网卡的巨大商业价值,2019年3月,英伟达花费69亿美元收购了以色列芯片公司 Mellanox 。并在2020年推出了DPU产品,从此, DPU 这个概念正式进入了公众视野。
▉ DPU还有哪些应用?
从上文中虚拟化中的应用我们可以看到,DPU将基础设施任务从CPU转移至DPU,释放CPU的资源,使更多的服务器CPU核可用于运行应用程序,完成业务计算,从而提高服务器和数据中心的效率。
那么还有哪些地方可以用到DPU呢?
1. 将服务从主机卸载到DPU
目前,DPU还可以针对云原生环境进行优化,加速的网络、存储、安全和管理等服务。

如下图所示,红帽Red Hat的容器化云平台即服务(PaaS)OpenShift上,借助DPU优化数据中心资源利用率,将网络相关的数据处理(如VxLan和IPSec等)卸载到DPU加速执行,在25Gb/s网络条件下,OpenShift部署DPU用来加速,可以只用1/3的CPU占用了来达到25Gb/s性能,而在100Gb/s网络条件下,未部署DPU的场景将达不到100Gb/s网络线速,DPU可以带来10倍的性能优势。
2. 提供零信任安全保护
零信任(Zero Trust)是一种以安全性为中心的模型,其基于以下思想:企业不应对其内外的任何事物授予默认信任选项。零信任可以减少数据泄露、拒绝未授权的访问,因此在数据安全方面价值巨大。DPU可以为企业提供零信任保护,通过将控制平面由主机下放到了DPU,实现主机业务和控制平面的完全隔离,数据将无法进行穿透,保证安全性。
DPU的出现相当于为每个服务器配备了一台"计算机前的计算机"以提供独立、安全的基础设施服务,并与服务器应用域安全隔离。如果主机遭受入侵,安全控制代理与被入侵主机之间的DPU隔离层可防止攻击扩散至整个数据中心。
这样DPU就解决了企业不愿直接在计算平台上部署安全代理的情况。通过在完全隔离于应用程序域的DPU上部署安全代理,企业不仅能获得对应用程序工作负载的可见性,还能在其基础设施中执行一致的安全策略。
3. 助力实现"算存分离"
通过在服务器系统的数据入口处引入计算资源,在DPU上独立实现面对应用需求的存储方案,帮助存储厂商在数据中心中低成本地灵活部署、升级高级存储协议,而完全不需要对现有软件栈进行任何更改。
存储厂商可以把自家团队为各行业应用开发的开放系统的直连式存储(DAS)、纵向扩展(Scale-UP)、横向扩展(Scale-OUT)、超融合架构(Hyperconverged)等存储解决方案,零开销地推广到各个应用领域的现有业务处理平台和数据中心基础架构中,而所有的安全加密、数据压缩、负载均衡等复杂又必须的功能则完全由DPU透明地卸载。
存储行业的革新算法和实现,可以在DPU架构中,独立于服务器操作系统进行部署。DPU技术帮助存储厂商实现真正的"算存分离",完全发挥自家产品的技术优势,打通最高效服务应用需求的通路。
如今数据中心中的各项操作主要都在CPU上完成,包括计算任务和各项基础设施任务等,而面对数据处理需求的增长,CPU的算力已经达到瓶颈,摩尔定律逐渐失效,GPU的出现解决了CPU的算力问题,数据中心的瓶颈转向基础设施任务,如数据存储、数据验证、网络安全等。
DPU的出现满足了这样的通用的基础设施任务加速的需求。由DPU构建强大的基础设施层,上层的CPU和GPU来完成计算任务。DPU具有的特性为:
1)行业标准、高性能、软件可编程的多核CPU,通常基于广泛使用的ARM架构,与其它SoC组件紧密耦合。
2)高性能网络接口,能够以线速或网络其余部分的速度解析、处理和有效地将数据传输到GPU和CPU。
3)丰富的灵活可编程加速引擎,可为AI和机器学习、安全、电信、存储和虚拟化等执行卸载并提高应用程序性能。
▉ 谈谈DPU的未来趋势?
目前DPU以数据为中心作为计算架构,能针对数据中心的安全、网络、存储、AI、HPC等业务进行加速。
从DPU概念的提出者NVIDIA的现有技术发展趋势来看,未来的技术发展趋势将会是高度集成化的片上数据中心的模式(Data Center Infrastructure on a chip),即一个GPU、CPU、DPU共存的时代。NVIDIA布局的数据中心从核心到边缘(Edge)都采用了统一的一个计算架构--CPU、GPU、DPU,如图所示,形成了"3U"一体架构。

3U一体的统一计算单元架构将会让管理程序、调度程序都会变得非常容易。通过CPU、GPU、DPU之间的协调计算,可以在数据中心和边缘端都可以达到高性能与高安全性。
可以说,NVIDIA非常看好DPU的发展,将DPU跟CPU和GPU放在一个地位来看待。
NVIDIA 创始人兼首席执行官黄仁勋表示:"现代超大规模云正在推动数据中心的新架构。需要一种旨在处理数据中心基础设施软件的新型处理器来卸载和加速虚拟化、网络、存储、安全和其它云原生AI服务的巨大计算负载。DPU的时代已经到来。"

除了NVIDIA,目前Intel、Marvell、NVIDIA成为最有潜力的产业先驱。大多数DPU方案是从基本的网络控制器开始扩展至SoC。就Intel而言,其产品采取处理器配合FPGA,外加加速引擎的方式;Marvell则采取使用最新处26理器内核配合加速引擎的方式;NVIDIA则采用了处理器配合ASIC,外加加速引擎的方式。这三种方式代表着DPU产业的未来主流的发展方向。
目前,中国DPU产业处于起步阶段,从中国国内市场需求侧来看,中国拥有世界最强的互联网产业、规模最大的网民和线上生态,正是因为数据的大爆发,推动了对算力的需求,同时,中国愈加重视网络安全,DPU在确保网络安全方向有得天独厚的优势,从数据安全到数据中心安全皆全方面覆盖,从而具备较好的发展潜力,这是DPU发展的前提。
DPU将致力于解决"网络协议处理、数据安全、算法加速"等问题,而这些问题有着"CPU做不好,GPU做不了"的特点。数据中心与云计算领域是中国DPU最大的应用市场,DPU可为终端政企用户提供较为成熟的安全的软件定义及硬件加速解决方案。

 楼主| 智慧谋略 发表于 2023-6-10 02:29:10 | 显示全部楼层

网图
DPU 的全称是 Data Processing Unit,也就是数据处理单元,是以数据为中心构造的专用处理器,被称为继CPU、GPU之后的“第三块主力芯片”。英伟达的首席执行官黄仁勋曾在演讲中表示: “DPU 将成为未来计算的三大支柱之一,未来的数据中心标配是‘CPU + DPU + GPU ’。CPU用于通用计算, GPU用于加速计算,DPU则进行数据处理。”那么DPU是什么呢?他与CPU、GPU又有什么不同呢?说到了这里,我们就要先了解下CPU和GPU是什么。
CPU(中央处理器)想必大家已经非常的熟悉,是一台计算机的运算核心和控制核心,负责计算机的各种计算和算术。在早些的时候,CPU配合硬盘、内存基本上就可以实现计算机的计算和运行。随着技术的发展,我们对计算机的要求也越来越高,希望计算机能处理更复杂的情况。这时CPU就忙不过来了,尤其是在处理图像、渲染画面的时候。因此,带着强大的实时图形处理能力的GPU(图形处理器)就出现了,像我们玩的各种画面绚丽的电脑游戏,都离不开的GPU的加持。后来GPU依靠其优秀的并行计算处理能力,开始广泛的应用于各种计算任务,其中最具代表性的就是深度学习的计算。
而DPU的出现与GPU相似,伴随着云端应用的丰富、数字化的发展、大规模数据中心、智能中心的出现,网络的带宽、数据交换的规模都在飞速的增长,网络带宽从主流 10G朝着25G、40G、100G、200G甚至400G发展。海量数据的增加也就导致了目标算力、网络带宽与计算性能的失调,使得CPU+GPU的组合也开始忙不过来了。在这样的趋势和环境下DPU就出现了。

网图
DPU的本质,是把数据面和控制面分离,使用芯片对数据面加速。或者说DPU的本质就是为CPU减负,帮助CPU进行大批量的数据处理,让CPU可以将计算资源集中到核心的计算中去。
目前计算机处理网络数据的速率主要看三个指标CPU性能、内存带宽和要处理的数据量。CPU的性能非常强,但是他的内存带宽很小,在处理少量的数据的时候CPU可以飞快的处理。但如果网络上传来的数据的量超过了CPU的内存,那就需要排队等候CPU的处理。CPU就好比一名数学家,在解决一个复杂困难的计算问题的时候,数学家可以高效的处理解决。但是如果是一万道甚至是百万道加减乘除的基础运算题呢,数学家就只能一道一道的计算。而DPU与CPU不同,他没有CPU那么强大的计算能力,但是他却拥着几乎可以和网络带宽相当的I/O带宽,可以同时处理大量的网络数据,将处理后的数据反馈给CPU,让CPU的运算更加高效。
DPU在最开始的阶段叫做基础功能网卡,也就是我们常说的普通网卡,在这阶段DPU只具备较少的硬件卸载能力,也就是说只能帮CPU处理很有限的数据。到了第二个阶段,出现了硬件卸载网卡,也可以认为是第一代智能网卡,它具有丰富的硬件卸载能力,像OVS Fastpath硬件卸载、RDMA网络硬件卸载、NVMe-oF的硬件卸载以及安全传输的数据面卸载等等。到了第三个阶段就是我们现在提到的DPU阶段,也就是智能网卡的升级版,在智能网卡的基础上,将存储、安全和虚拟化等工作负载也从 CPU 卸载到自己身上。

网图
从DPU的功能上可以看出,DPU就像是CPU的秘书,帮助CPU处理繁琐的大量的网络数据。但是并不是所有的CPU都需要专门的秘书来处理数据。因此DPU不会像GPU那样步入我们的个人电脑,而是专门配备给要接受大量网络数据的服务器们。而伴随云计算、大数据、数字化等技术的兴起,作为主力芯片的新物种,DPU 市场空间正快速扩张,国内外企业也争相进入到DPU的研发中来,布局DPU的产业和市场。GPU巨头NVIDIA通过收购 Mellanox积极布局智能网卡业务,并在2020年GTC秋季大会上宣布推出一款新型数据处理器,即BlueField-2 DPU。在NVIDIA的步步紧逼下,2021年6月,英特尔也发布了IPU(Infrastructure Processing Unit,基础设施处理器)来对标英伟达的DPU

高级模式
B Color Image Link Quote Code Smilies

本版积分规则

Archiver|手机版|小黑屋|探索掌握未知、共创美好未来

GMT+8, 2026-9-17 02:30 , Processed in 0.052531 second(s), 35 queries .

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表