究竟什么是 DPU ?它和我们熟悉的 CPU 、 GPU 有什么区别?

01 

 什么是 DPU?

DPU 的英文全称叫做 Data Processing Unit ,也就是数据处理器。

英伟达首席执行官黄仁勋曾在演讲中表示:“ DPU 将成为未来计算的三大支柱之一,未来的数据中心标配是‘ CPU + DPU + GPU ’。CPU 用于通用计算, GPU 用于加速计算, DPU 则进行数据处理。”

听着有点晕, DPU 到底进行什么样的数据处理?有了 CPU 和 GPU ,为啥还要 DPU ?

众所周知,自从计算机诞生以来,就是采用的著名的冯诺依曼架构。

冯诺依曼架构

这是一个以计算和存储为核心的架构, CPU 作为处理器单元,负责完成各种算术和逻辑计算。而内存(运存)和硬盘(外部存储),负责存储数据,与 CPU 交互。

除了 CPU 、内存和硬盘之外,就是键盘、显示器这样的输入和输出设备。随着时间的推移,后来,我们有了鼠标,又有了显卡、网卡。最终,形成了现在大家看到的电脑的基本构造。

有了显卡,就有了 GPU(Graphics Processing Unit),图形处理器。大家都玩过游戏,很明白,正是游戏、 3D 设计等多媒体图形软件的高速发展,要处理的工作量越来越大,也越来越复杂, CPU 实在忙不过来,所以就有了专门进行图像和图形相关运算工作的 GPU ,分担 CPU 的压力。

DPU 的出现,道理也是一样的。同样是因为 CPU 难以负担一些复杂的计算,所以需要进行任务分工。

02 

DPU 到底算些什么?

好了,终于到了关键点了。说了半天, DPU 到底分担了 CPU 的哪些工作呢?

说实话,想要从技术上解释 DPU 分担的工作内容,稍微有点困难,不容易看懂。但是,我们可以从工作场景上进行解释。

大致来看, DPU 分担的工作可以归纳为四个关键词,分别是虚拟化网络存储以及安全

特别需要提醒大家, DPU 是一个紧密围绕数据中心的概念。也就是说,它主要用于数据中心这种大规模算力场景,而非我们每个人的台式机、笔记本电脑或手机(至少目前不是)。

DPU 服务于云计算,主要作用是提升数据中心等算力基础设施的效率,减少能耗浪费,进而降低成本。

前面提到的虚拟化、网络、存储以及安全,是数据中心非常重要的工作,也是大量消耗算力资源的工作。

以网络为例。

在数据中心里,时时刻刻都有大量的数据在进行传输。主机在收发数据时,需要进行海量的⽹络协议处理。根据传统的计算架构,这些协议处理都是由 CPU 完成的。

有人统计过,想要线速处理 10G 的⽹络,需要的⼤约4个 Xeon CPU 的核。也就是说,仅仅是进行⽹络数据包的处理,就要占用⼀个8核⾼端CPU⼀半的算⼒。现在数据中心网络不断升级,从 10G 到 40G 、 100G ,甚至 400G ⾼速⽹络,这些性能开销如何承受?

这些开销如此之大,以至于被称为“ Datacenter Tax(数据中心税)”。

业务程序尚未运行,仅是接入网络数据,就消耗了这么多算力资源,这是无法忍受的。所以,就有公司提出了 SmartNIC (智能网卡)的概念,将网络协议处理的工作从 CPU “卸载”到网卡上,以此分担 CPU 的负载。

2015年,云计算厂商 AWS 率先开始探索这种 SmartNIC 模式。他们收购了芯片厂商 Annapurna Labs ,并于2017年正式推出 Nitro 系统。同年,阿里云也官宣了有类似功能的神龙( X-Dragon )架构。

2019年3月,英伟达花费69亿美元收购了以色列芯片公司 Mellanox 。英伟达将 Mellanox 的 ConnectX 系列高速网卡技术与自己的已有技术相结合,于2020年正式推出了两款 DPU 产品:BlueField-2 DPU 和 BlueField-2X DPU 。

从此, DPU 这个概念正式进入了公众视野。2020年,也被称为 DPU 元年。

正因为 DPU 和 SmartNIC 有这样的渊源,所以,人们普遍将 DPU 视为 SmartNIC 的扩展升级版。

DPU 在 SmartNIC 的基础上,将存储、安全和虚拟化等工作负载也从 CPU 卸载到自己身上。

上世纪90年代末,以 VMWare 为代表的虚拟化技术刚刚出现的时候,完全是由软件进行模拟线的,缺乏硬件的支持,所以,性能很差,几乎难以使用。

后来,2005年,随着技术的演进, CPU 和内存的硬件虚拟化问题逐渐解决,才让虚拟化系统的性能有了大幅的提升,也激活了这项技术的发展前景和价值。众所周知,我们现在的整个云计算架构,都是基于虚拟化技术发展起来的。

虚拟化技术发展的过程,是硬件能力不断取代软件能力的过程。前面我们提到 AWS 发布 Nitro 系统。这个系统除了 SmartNIC 之外,也完成了 I/O 的硬件虚拟化。它还将虚拟化管理程序 Hypervisior 从 CPU 卸载到专用硬件上。这样做带来的结果就是,虚拟化技术的性能损耗趋近于零, CPU 的负担进一步下降。

存储也是如此。

现在数据中心对存储读取和写入的速率要求很高。SSD 价格逐渐下降后,将 SSD 通过本地 PCIe 或高速网络与系统相连接,成为了一种主流的技术路线。针对分布式系统,在以往 InfiniBand 、 FC(Fiber Channel,光纤通道)、 Ethernet 的基础上, RDMA(Remote Direct Memory Access,远程直接数据存取)技术开始流行。

在 RDMA 模式中,应用程序的数据,不再经过 CPU 和复杂的操作系统,直接和网卡通信。这就意味着, DPU 可以承担存储相关的高速接口标准协议处理,进一步为 CPU 分担压力。

最后再看看安全。

在目前越来越严峻的安全形势下,为了确保网络和系统的安全可靠,引入了大量的加密算法。以往,这些算法都是由 CPU 负责完成加密和解密的。

但事实上,网络接口才是最理想的隐私边界。在网络接口上进行加密和解密,才是最合理的。所以,像国密标准的非对称加密算法 SM2 、哈希算法 SM3 和对称分组密码算法 SM4 等,其实都可以交给 DPU 进行计算。未来,区块链技术成熟应用后,相关算法也是可以从 CPU 卸载到 DPU 进行的。

综上所述,大家应该也看明白了, DPU 的作用本质,就是卸载加速隔离——把 CPU 的部分工作卸载到自己身上;利用自己的算力特长,对这些工作进行加速运算;整个过程,实现了计算的隔离。

03 

DPU 的未来前景

DPU 是一个新型可编程多核处理器,是一块 SoC(System On Chip)芯片。它符合行业标准,具有很高的算力,还具备高性能的网络接口,能高速解析、处理数据,并高效地将数据传输到 CPU 和 GPU 。

DPU 和 CPU 的最大不同,是 CPU 擅长通用性计算任务(什么任务都能接,比较“杂”),而 DPU 更擅长基础层应用任务(做特定的任务,比较“专注”),例如网络协议处理,交换路由计算,加密解密,数据压缩等“脏活累活”。

所以说, DPU 是 CPU 的一个好帮手,将与 CPU 、 GPU 形成“铁三角”,彻底颠覆数据中心的运算模式。

这就是为什么 DPU 如今备受关注的原因。

正如本文开头所说, DPU 目前的火爆程度,已经不能用词语来形容。资本对于 DPU 的热情,更是令人印象深刻。不管是巨头还是初创公司,都纷纷入局 DPU 赛道。DPU 的市场仍在升温,发展前景可期。

04

结语

根据预测,到2025年, DPU 全球市场容量预计将达到120亿美金。

随着摩尔定律逐渐进入瓶颈,为了更高效地利用算力资源,我们需要大力发展 DPU ,让 CPU 、 GPU 、 DPU 进行合理分工,各自更加专注于自己擅长的工作。这样,我们才能将数据中心的能效发挥到最大,为整个社会的数字化转型提供强劲且绿色的动力。

最后,让我们以一段精彩的 DPU 视频作为文章的结束。DPU 到底能带给我们怎样的改变,让我们拭目以待!

-END-


往期推荐:点击图片即可跳转阅读

假如,我变成了单片机…

如果焊接也需要打怪升级,你在哪一级?

ST推出 28nm MCU ,NXP更狠,推出16nm MCU

CPU? GPU ?DPU?傻傻分不清楚。相关推荐

  1. (转)CPU/GPU/TPU/NPU傻傻分不清楚

    刚开始接触深度学习概念时,基本大多数时候也就提到GPU,也基本是用GPU来进行深度学习算法训练或部署人脸识别系统的. 近几年,随着人工智能(尤其是人脸识别)的爆炸式发展,诞生了许多新的东西,其中这芯片 ...

  2. CPU、GPU、DPU、TPU、NPU...傻傻分不清楚?实力扫盲——安排

    ​ 人工智能的发展离不开算力的支持,算力又是依附于各种硬件设备的,没有了算力设备的加持,就好比炼丹少了丹炉一样,可想而知,人工智能智能也就无用武之地了.以深度学习为主的人工智能方向的发展更是离不开强大 ...

  3. VPU/NPU/TPU/GPU/CPU眼花缭乱,傻傻分不清楚?三百字讲明白

    VPU/NPU/TPU/GPU/CPU眼花缭乱,傻傻分不清楚?三百字讲明白 简介 详解 参考链接 简介 CPU,Centeral Processing Unit(中央处理器) GPU,Graphics ...

  4. 动态ram依靠什么存储信息_ROM、RAM、DRAM、SRAM和FLASH傻傻分不清

    ROM.RAM.DRAM.SRAM和FLASH各类储存器在电脑.手机.电子设备.嵌入式设备及相应的开发中普遍应用的,但是很多还是傻傻分不清楚.下面就简单介绍下这几个吧! ROM和RAM ROM:只读存 ...

  5. 数据平台、大数据平台、数据中台……傻傻分不清?这次终于有人讲明白了!

    来源 | 智领云科技 造概念,在IT行业可不是一件陌生的事儿,中文博大精深,新名词.新概念往往简单准确,既可以被大众接受,又可以被专家把玩,真正做到雅俗共赏.各有趣味.近年来,数据中台之火爆,什么数据 ...

  6. 进程、线程与协程傻傻分不清?一文带你吃透!

    目录 前言 内容大纲 进程 什么是进程 进程的控制结构 进程的状态 进程的上下文切换 线程 什么是线程 线程与进程的对比 线程的上下文切换 线程的模型 调度 调度原则 调度算法 好文推荐 前言 欢迎来 ...

  7. 串行、并行、并发,别再傻傻分不清了!

    开足码力,码动人生,微信搜索[ 程序员大帝 ],关注这个一言不合就开车的的代码界老司机 本文 GitHub上已经收录 https://github.com/BeKingCoding/JavaKing ...

  8. 云计算、大数据、人工智能傻傻分不清楚?本文详解这三者的关系

    云计算.大数据.人工智能傻傻分不清楚?本文详解这三者的关系 提示: 今天跟大家讲讲云计算.大数据和人工智能.这三个词现在非常火,并且它们之间好像互相有关系. 一般谈云计算的时候会提到大数据.谈人工智能 ...

  9. 虚拟主机、VPS、云服务器傻傻分不清楚,看这里!

    对于服务器租用中的云服务有云虚拟主机.VPS主机和云服务器,由于这三种服务器名字和功能相似,让人傻傻分不清楚.那么这三者之间有什么区别呢? 一.云虚拟主机,也常常被称为"虚拟空间" ...

  10. 并发、并行傻傻分不清楚?线程的一生都经历些什么?

    温馨提示:阅读本文需要5-6分钟(少量代码) 公众号:顾林海(每天更新优质文章) 今天,我们来解决一个问题: 并发.并行傻傻分不清楚?线程的一生都经历些什么? 人生一切难题,知识给你答案. ==并发与 ...

最新文章

  1. CentOS6.5下Gunicorn+Django+nginx部署的过程
  2. B 站神曲damedane:精髓在于换脸,五分钟就能学会
  3. UVa11022 String Factoring(kmp+dp)
  4. Elasticearch 查询详解 (二)
  5. 百度云 ajax jquery 三级联动,jQuery ajax实现省市县三级联动
  6. 5个球放入3个箱子_乌龙!3个可疑箱子出现在中国总领事馆外,警方排爆后发现是口罩……...
  7. python计算思维训练文件操作与异常处理_054 Python程序设计思维
  8. Linux16.04配置OpenCV3.2
  9. 谈谈yii2-gii如何自定义模板
  10. 第6课 仿Siri机器人-语音朗读和语音识别
  11. 智能续航兼得的“超能代表”OPPO Watch 2系列正式发布
  12. 【报告分享】智能时代的商业地产数字变革与发展报告.pdf(附下载链接)
  13. 一个极简的RePlugin
  14. iOS 中的正则匹配(工具类方法)
  15. openshift安装文档
  16. 同花顺显示正在切换服务器,同花顺服务器架构
  17. 时频分析之短时傅里叶变换(STFT)
  18. 【每日爬虫】:生产者与消费者模式爬取王者荣耀壁纸
  19. STM32cubeIDE生成HEX文件
  20. 如何在电脑上进行PDF压缩?

热门文章

  1. PHP常见的108个知识点
  2. Jquery对selec操作的总结
  3. 【愚公系列】2023年03月 网络安全-基于FlaUI的微信自动化
  4. C++旋转数组(三种解法详解)
  5. Pytorch中gather函数的个人理解方法
  6. linux下统计程序/函数运行时间
  7. [内网安全]二.域实验环境搭建
  8. MySQL在线模拟平台
  9. android studio Instrumented tests代码覆盖率获取方法(补充)
  10. LinQ综合应用实例