0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

详细分析DPU认识的四个层级

jf_C6sANWk1 来源:软硬件融合 作者:Chaobowx 2022-11-21 17:24 次阅读

1 (背景)云计算复杂计算场景挑战

云计算是由IaaS、PaaS以及SaaS组成的分层服务体系,计算、存储和网络是IaaS层核心的三类服务。

云计算的特点:

超大的规模、大量的数据、复杂的网络以及无处不在的安全问题;

虚拟化、多租户;

复杂系统解构以及可扩展性;

繁重的工作负载以及针对特定场景的服务;

可迁移性,和对设备和服务接口一致性的要求。

底层硬件架构挑战:

如何兼顾性能和灵活性;

从业务异构加速、工作任务卸载,到业务和管理分离;

如何实现接口的标准化和弹性,以及硬件加速的虚拟化和个性化;

如何实现硬件加速的弹性和支持软件的长期迭代;

如何硬件高可用;

最大挑战:一个平台应对上述所有挑战。

2 (理论)软硬件融合综述

2.1 软硬件融合的背景

deb2c958-67a5-11ed-8abf-dac502259ad0.png

软件应用层出不穷,并且快速迭代。两年一个新的软件热点,并且,已有热点技术仍在快速演进和迭代。

而硬件越来越复杂,芯片工艺走向5nm以下,甚至即将进入亚纳米,3D堆叠封装,4D的Chiplet互联。这都使得芯片规模越来越大。芯片如此复杂,越来越难以驾驭;同时,芯片的一次性成本及研发风险都变得越来越高。

CPU性能瓶颈,但服务器的工作负载数量和单个负载的算力消耗仍在增加,“摩尔定律”要想持续,必须需要更多更复杂的硬件加速。而ASIC/DSA的灵活性不够,难以满足应用的多样和变化,也使得芯片越来越难以大规模落地。

软硬件之间的鸿沟越拉越大:CPU软件性能低下,定制ASIC难以大规模复制;软件迭代越来越快,硬件迭代却越来越慢。芯片高投入高风险,严重制约着软件的发展。

2.2 软件和硬件的定义

deccaf80-67a5-11ed-8abf-dac502259ad0.png

指令是软件和硬件的媒介,指令的复杂度(也即单位计算的密度)决定了系统的软硬件解耦程度。

按照指令的复杂度划分,典型的处理器平台大致分为CPU、协处理器、GPUFPGA、DSA、ASIC等。从左往右,各个处理器平台的单位指令越来越复杂,性能越来越好,而灵活性却越来越低。

我们把任务在CPU运行,定义为软件运行;把任务在协处理器、GPU、FPGA、DSA或ASIC运行,则定义为硬件加速运行。

2.3 软硬件融合

dee3c9ea-67a5-11ed-8abf-dac502259ad0.png

把一个Workload映射到处理引擎,有如下特点:

均衡:根据任务特点,映射到CPU、GPU、DSA、ASIC等最合适的处理引擎。

动态:任务最合适的处理引擎,并非一成不变,而是随着系统发展迭代有可能Offload/Onload。

复杂的系统,由分层分块的各个组件有机组成。软硬件融合,不改变系统层次结构和组件交互关系,但打破软硬件的界限,通过系统级的协同,达成整体最优。

传统分层很清晰,下层硬件上层软件;软硬件融合的分层分块,每个任务模块都是不同程度软硬件解耦基础上的软硬件协同。整个系统呈现出:软件中有硬件,硬件中有软件,软硬件融合成一体。

df03a4e0-67a5-11ed-8abf-dac502259ad0.png

《软硬件融合》图书的副标题是“超大规模云计算架构创新之路”,来源是:①复杂分层的系统、②CPU性能瓶颈、③超大规模以及④特定场景服务,这些原因共同使得:软硬件融合当前主要是系统不断卸载。

“无规模,不卸载”。哪些任务适合卸载?

性能敏感,占据较多CPU资源;

广泛部署,运行于众多服务器。

宏观的看,分层的系统,越上层越灵活软件成分越多,越下层越固定硬件成分越多,根据这个特点,软硬件融合卸载可以形成如下趋势:

被动的趋势。庞大的规模以及特定场景服务,使得云计算底层Workload逐渐稳定并且逐步Offload到硬件。

主动的趋势。软硬件融合架构,使得“硬件”更加灵活,功能也更加强大,使得更多的层次功能向“硬件”加速转移。

2.4 软硬件融合的应用领域

df1fee3e-67a5-11ed-8abf-dac502259ad0.png

云计算的规模庞大,算力要求最高,系统也最复杂。所以,云计算最先遇到各种挑战,最需要软硬件融合。

未来,随着其他领域的算力需求和系统复杂度也质的提升,必然也需要软硬件融合相关技术。软硬件融合,面向未来复杂计算场景,超异构混合计算,算力需求再上1-2个数量级。

软硬件融合相关技术,从云计算抽象出来,反过来指引包括云计算在内的各种复杂计算场景的芯片及系统设计。

3(技术)软硬件融合技术基础

df47d07a-67a5-11ed-8abf-dac502259ad0.png

软硬件融合相关的技术包括:

软硬件接口。聚焦软件和硬件高效的数据交互;

高性能网络。例如RDMA和拥塞控制。

算法加速和任务卸载。算法硬件实现以及任务卸载框架。

虚拟化的硬件加速。虚拟化处理的高性能实现。

异构计算加速平台。独立/集成的GPU/FPGA/DSA异构加速平台。

4(场景)DPU/IPU,云计算软硬件融合的核心承载

4.1 CPU卸载视角:DPU是集成加速平台

df66f37e-67a5-11ed-8abf-dac502259ad0.png

需要有独立的加速平台,不断的把工作任务从CPU软件卸载到硬件加速。因此,DPU/IPU主要用于底层通用任务加速,而GPU/FPGA/DSA用于应用层的业务加速。

NVIDIA 2020年5月发布DPU,10月份大张旗鼓宣传;作者2020年8月份提出四阶段论;Intel 2021年6月份发布IPU。

4.2 DPU的额外价值:业务管理分离,释放AI强劲动力

df76cb3c-67a5-11ed-8abf-dac502259ad0.png

业务和管理分离,有非常多的额外好处,如:

CPU资源完全交付;

传统客户方便上云;

主机侧独立安全域;

物理机+虚拟机的优势合并;

统一公有云和私有云运维。

df8ce520-67a5-11ed-8abf-dac502259ad0.png

CPU性能瓶颈,IO带宽持续增大,IO成为系统瓶颈。DPU/IPU增强了IO的功能,并且逐渐吞噬CPU和GPU的通用工作任务。

4.3 以数据为中心

df9e4748-67a5-11ed-8abf-dac502259ad0.png

大数据、AI等场景呈现“高数据量低计算量”的特点,并且“云原生”等趋势使得云计算复杂系统解构,进一步增强了这一特点。

以计算为中心,指令控制流驱动计算;未来,以数据为中心,数据流驱动计算。

4.4 DPU/IPU典型案例

典型案例:AWS Nitro系统 (偏通用可编程vs NVIDIA Bluefield DPU (偏定制极致性能)

dfc27be0-67a5-11ed-8abf-dac502259ad0.png

AWS Nitro系统包括:VPC加速卡、EBS加速卡、本地存储加速卡、Nitro控制器、安全芯片以及Lite Hypervisor。

dfe9268c-67a5-11ed-8abf-dac502259ad0.png

NVIDIA DPU-2的优势:硬件网络加速/RDMA网卡/单芯片SOC;劣势:存储软件卸载/非标接口/难以差异化/网络无法数据面编程。

5(本质)基于软硬件融合的超异构计算

5.1 DPU成为计算的核心

dffd9964-67a5-11ed-8abf-dac502259ad0.png

CPU、GPU和DPU,既相互协作,又相互竞争。互联网法则:得入口者得天下。DPU/IPU成为数据中心算力和服务的核心。

e02e3d58-67a5-11ed-8abf-dac502259ad0.png

传统的观点,大家认为DPU是CPU的任务卸载。而从软硬件融合观点,则认为:DPU是包含嵌入式CPU/GPU在内的超异构计算平台,而独立CPU/GPU是DPU的扩展。

5.2 超异构和软硬件融合

当前,大家对DPU的认识还没有形成定论,从DPU到超异构计算,整个认识是逐级增强的:

Level 1:DPU是CPU的任务卸载/加速。

Level 2:IPU是基础设施,支撑上层应用。

Level 3:DPU/IPU是计算的核心,CPU和GPU成为扩展。

Level 4:DPU/IPU的本质是超异构计算,需要在极致灵活性的基础上,提供极致的性能。

要实现超异构计算,为什么需要软硬件融合架构(Converged Architecture of Software and Hardware,CASH)?软硬件融合能够做到:

性能。相比GPGPU,性能再提升100+倍;相比DSA,性能再提升10+倍。

灵活性。接近于CPU的灵活性、通用可编程性。

资源效率。跟DSA接近的资源效率,单位晶体管消耗下最极致的性能。

设计规模。软硬件融合,驾驭10+倍更大规模的设计。

架构。基于软硬件融合架构的超异构计算:CPU + GPU + DSA + ASIC + etc.。

生态。开放的平台及生态,开放、标准的编程模型和访问接口,融合主流开源软件。

5.3 第四代算力革命:基于软硬件融合的超异构计算

e0642c24-67a5-11ed-8abf-dac502259ad0.png






审核编辑:刘清

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • asic
    +关注

    关注

    34

    文章

    1156

    浏览量

    119262
  • DPU
    DPU
    +关注

    关注

    0

    文章

    294

    浏览量

    23965
  • DSA
    DSA
    +关注

    关注

    0

    文章

    47

    浏览量

    14982

原文标题:软硬件融合:从DPU到超异构计算

文章出处:【微信号:阿宝1990,微信公众号:阿宝1990】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    DVI接口详细分析

    DVI接口详细分析DVI 接口规格和定义 DVI 有DVI 1.0 和DVI 2.0 两种标准,其中 DVI 1.0 仅用了其中的一组信号传输信道(data0-data2 ),传输图像的最高像素时钟
    发表于 08-11 09:51

    工程师应该掌握的20模拟电路(详细分析及参考答案).pdf

    工程师应该掌握的20模拟电路(详细分析及参考答案).pdf
    发表于 04-07 13:28

    工程师应该掌握的20模拟电路(详细分析及参考答案)

    工程师应该掌握的20模拟电路(详细分析及参考答案)
    发表于 08-17 09:58

    三极管特性曲线详细分析

    三极管特性曲线详细分析,特性曲线看不懂,
    发表于 06-29 16:34

    uboot代码详细分析

    [url=]uboot代码详细分析[/url]
    发表于 01-29 13:51

    详细分析一下USB协议

    本文跟大家一起详细分析一下USB协议。
    发表于 05-24 06:16

    详细分析stm32f10x.h

    每日开讲---学习STM32不得不看的剖析(详细分析stm32f10x.h)摘要: 学习STM32不得不看的剖析(详细分析stm32f10x.h)。/**这里是STM32比较重要的头文件*******************************************
    发表于 08-05 07:44

    详细分析了VTIM和VMIN的功能

    上一篇文章中,我们详细分析了VTIM和VMIN的功能,《嵌入式Linux 串口编程系列2--termios的VMIN和VTIME深入理解》 也明白了这两参数设计的初衷和使用方法,接下来我们 就详细
    发表于 11-05 07:09

    请问一下怎样对stm32的启动代码进行详细分析

    请问一下怎样对stm32的启动代码进行详细分析呢?
    发表于 11-26 07:10

    电子工程师必须掌握的20模拟电路详细分析

    本文档的主要内容详细介绍的是硬件工程师必须掌握的20重要模拟电路的概述和参考答案以及详细分析
    发表于 09-27 08:22

    电子工程师需要掌握的20模拟电路的详细分析

    电子工程师需要掌握的20模拟电路的详细分析
    发表于 09-28 06:22

    电子工程师必须掌握的20模拟电路详细分析

    内含参考答案以及详细分析
    发表于 10-07 07:15

    uboot1-1-6代码详细分析

    uboot 1-1-6版本的 代码详细分析
    发表于 11-02 11:02 25次下载

    Buck变换器原理详细分析

    Buck变换器原理详细分析
    发表于 09-15 17:26 30次下载
    Buck变换器原理<b class='flag-5'>详细分析</b>

    正激有源钳位的详细分析

    正激有源钳位的详细分析介绍。
    发表于 06-16 16:57 56次下载