DPU核心特性有哪些?

DPU核心特性有哪些?

最佳答案 匿名用户编辑于2023/05/09 09:06

DPU 必须具备:层级化可编程性、低延时网络、统一管控以及 适应持续发展的加速卸载的关键特性。

1.层级化可编程

性能和可编程能力是一对紧密联系的组合体,既相辅相成,又相互制约。在追求卓越性 能的时候,就要去除冗余部分完全聚焦在具体的任务上,必然导致灵活性/可编程能力的下 降;反之,在追求通用性和灵活性的时候,不得不考虑增加额外的分支判断和预测的功能来 保证最大的适应性,必然导致性能的下降。CPU、GPU 的发展演进过程是对这种关系的最 好诠释。

随着网络和算力需求的持续增加,以 CPU 为计算中心的服务器架构越来越不能满足实 际应用对性能的需求,整个服务器系统将逐渐演化为以 DPU 作为数据处理中心的架构。

DPU 将承担起对性能敏感的网络、存储、安全以及和应用相关的,诸如 AI、数据库等 工作任务的加速处理工作,更好地支撑 CPU、GPU 的上层业务。在新型的云原生、算网融 合的服务器架构中,DPU 的层级化可编程特性使得构建强大的算网融合的基础设施层成为 可能。依据不同层次的应用需求,DPU 可编程性可划分为三个层级:

层级 1 – 通用可编程 

主要面对通用可编程处理需求,以及数据慢速路径的处理需求,极大的灵活性,满 足灵活多变的场景需求。特点为:高灵活性,性能需求相对不高。

层级 2 – 嵌入引擎可编程 

嵌入引擎可编程介于通用可编程和下一个层级的领域可编程之间,主要针对 DPU 具备的各种嵌入式微引擎(例如,RISC-V core+增强的网络处理指令集的微引擎 是实现层级 2 可编程能力的可行方案之一)。嵌入引擎可编程兼顾灵活性和数据处 理性能,基于 C、汇编、P4 或其他编程语言,针对动态的业务加速和卸载需求, 达到最佳的平衡点。特点为:均衡的灵活性/性能。

层级 3 – 领域可编程 

针对特定领域的可编程性,可以获得最佳的性能。特点为:极致性能、低灵活性。 在领域可编程中,一种可行的方案是基于可编程的 Pipeline 架构,应用层采用基 于 P4-Pipeline 的编程接口。例如在对快速路径中报文转发与处理的应用,领域可 编程能力可以发挥巨大作用。

DPU 层级化编程架构使得面对不同的性能——灵活性组合的需求时,DPU 可以采取不 同的编程组合满足实际需求。

2.低时延网络

无论数据中心的发展如何演进,使用的技术如何复杂,有一点需要明确,那就是网络数 据包最终都是在物理的网络中进行传输。DPU 作为数据中心的核心部件之一,承担着物理 网络传输的重要责任,是衔接算力(包括 CPU+GPU)和网络两大领域的重要枢纽。因此, DPU 的网络特性,例如带宽、时延等直接或者间接决定了数据中心网络发展的上限。带宽 的发展相对平稳,从当前的 10G、25G 网络逐步演进到未来的 100G、200G、400G 网络。 随着带宽,数据吞吐需求的增长,物理网络时延极大地制约着数据中心上层应用的发展,例 如虚机,裸金属的应用部署。

构建和优化低时延网络时,就是要分析和改善这些影响网络包传输时延的各个组成部分。链路传输时延,具体指的是传输介质带来的时延,例如电缆、光纤,时延是固定值,不可改 变,不用考虑。就 DPU 在数据中心的核心位置而言,其他几项都是 DPU 需要聚焦的点。

数据串行时延和设备转发时延,在 DPU 中主要依赖芯片的硬件逻辑性能。随着网络流 量的指数增长,基于硬件的数据面转发技术在交换机和路由器得到了发展和应用,这些技术 (例如:NP 的 RTC 架构和 Pipeline 架构)也在新型数据中心网络架构中被应用到了 DPU 上面。当前,经过实践的检验,最佳的数据面转发技术——可编程的 Pipeline 技术在 DPU 中被采纳。可编程的 Pipeline 技术,保留了硬化的 ASIC 实现的 Pipeline 在高业务吞吐和 低时延的优势,同时可编程性兼顾了灵活性和可拓展性,支持未来新业务的兼容性。DPU 可 编程的 Pipeline 技术有效地降低了数据串行操作和设备操作时延。

另外,在排队时延和节点处理时延方面,DPU 的层级化可编程特性可以发挥软硬协同 的方式优化排队时延和节点处理时延的性能。在实践中,直接在 DPU 中以软硬协同的方式 实现对 RDMA 和 RoCEv2 的支持是实现低延时网络的最佳技术选择之一。RDMA 的性能 优势主要体现在零拷贝和 kernel bypass,零拷贝实际上减少了数据拷贝次数,没有数据拷 贝到内核的操作,大大降低了数据处理的时延;另外,kernel bypass 之后去除了繁琐的报 文头的处理逻辑,也进一步降低了时延。RoCEv2 是继 RoCEv1 之后更加成熟的 RDMA 承 载协议。RoCEv2 网络在数据链路层支持标准以太网协议,在网络层支持 IP 协议,可以被 当前的数据中心网络直接采用和部署。通用 DPU 为了实现低时延网络,可以将 RDMA 和 RoCEv2 卸载到 DPU 上,通过硬件逻辑加速报文的排队和处理时延。这样,一方面释放了 CPU 算力资源,另外一方面将数据的处理转发操作尽量靠近网络侧。但是,在 DPU 卸载 RDMA 和 RoCEv2 的实现中,RDMA 协议本身对网络丢包要求极高,因此如何减少和避免 网络拥塞和丢包是一个非常重要的问题,处理不好,将会严重影响低时延网络的性能。目前, 网络拥塞解决方案有 PFC、ECN、DCQCN、Timely 等方案。以 PFC 和 ECN 为例,PFC 是 一种基于队列的反压协议,ECN 是一种基于流的端到端流控协议。在数据中心的网络实践 中,PFC 和 ECN 各有千秋,但是都不能独立解决当前的网络拥塞和丢包问题。如前文所述, 通用 DPU 将以软硬协同的方式,来面对这个挑战。在 RDMA 和 RoCEv2 进行硬件卸载的 同时,引入基于 C 的可编程单元(处于上一章节中描述的可编程层级 2),实现 PFC+ECN拥塞控制算法的可编程性,增加对网络状态的智能感知能力。例如利用层级 2 中的可编程微 引擎单元,实现对大量的、持续的数据传输流(俗称大象流)和少量的、短时间的数据传输 流(俗称老鼠流)的动态感知和动态拥塞控制。

总结,通用 DPU 中的可编程 Pipeline、RDMA+RoCEv2 硬件逻辑模块、可编程拥塞 控制单元共同作用,以软硬协同的方式保证低时延网络的实现。

3.统一资源管控

DPU 在数据中心应用中将扮演着重要的角色,是衔接算力(包括 CPU+GPU)和网络 两大领域的重要枢纽,是应用驱动下出现的异构计算设计的必然结果和实践。DPU 的体系 架构解决了在数据中心应用中 CPU、GPU 很难或者不能完成的技术难点,在提升了整体数 据中心运行效率的同时,也有效降低了数据中心基础设施的投资和运维成本。

DPU 的体系架构真正实现了对计算资源、网络资源、存储资源的统一运维和管理,并 且可以轻松地支持网络、存储和管控的卸载;支持裸金属应用模式下的宕机迁移;支持虚拟 机应用模式下的虚拟机热迁移。

4.持续发展的加速卸载

随着 DPU 在数据中心应用中的不断深入,DPU 将持续地对数据中心的应用和业务进 行加速和卸载。如下图所示,在之前的应用中,Virtio-backend、OVS 已经在 DPU 中实现 硬件的加速和卸载;现在,针对 RDMA、NVMe、加密解密等的应用正在 DPU 中进行积极 的实践;未来,DPU 将会把更多的应用加速并卸载到 DPU 中。例如:AI 的并行通讯、分 布式数据库、Service Mesh 等应用的加速和卸载。

参考报告

云计算通用可编程DPU发展白皮书(2023年).pdf

云计算通用可编程DPU发展白皮书(2023年)《“十四五”数字经济发展规划》中指出数字经济是继农业经济、工业经济之后的主要经济形态,是以数据资源为关键要素,以现代信息网络为主要载体,以信息通信技术融合应用、全要素数字化转型为重要推动力,促进公平与效率更加统一的新经济形态。随着数字经济的持续发展,算力需求呈爆发性增长,算力正在逐步成为新时代的核心生产力。算力的发展同步带动了网络的变革,构建高效、灵活、敏捷的算力基础设施底座,成为数据中心网络新型基础设施基于数据算力驱动和演进的关键。中国移动云能力中心IaaS产品部总经理刘军卫谈到:“随着人类生产力进入算力时代,...

查看详情
相关报告
我来回答