大话DPU—从网络到数据

原创 歪睿老哥 2021-09-30 17:30


2019年,NVIDIA 69亿美金收购了一家以色列的公司,Mellanox。


虽然贵,但是很值。


收购Mellanox之后,老黄把其中Mellanox产品线中一个不起眼的可编程的网卡系列bluefield改名为DPU。


后来的事情,就超出了老黄的想象,各种DPU公司风起云涌,甚至压过“AI”一头,成为了VC眼中的“新贵”,成为了风口。


对于网卡芯片行业,大家都在讲smartnic(智能网卡)的故事,智能网卡已经很高大上了,smartnic,智能网卡。


DPU这个故事一来,smartnic这个名字就从“小甜甜成”了“牛夫人”。


此一时,彼一时。


Mellanox成立于1999年,是以Infiniband产品而起家的,Infiniband主要是是一个用于高性能计算的计算机网络通信标准。Infiniband具有极高的吞吐量和极低的延迟,可以理解成行化的总线。


infinity 无限的。band  带宽;infiniband这个名字直译无限带宽”,非常霸气。


和普通人用的计算机网络比起来Infiniband在带宽和时延上有优势。成本比网络高多了。 但是由于要额外的Infiniband交换机,其成本限定了只能在超算和存储领域这些商用领域使用。


Infiniband的HCA卡和Infiniband交换机。对应就是普通组网的网卡和网络交换机,因为Infiniband的HCA卡和网卡基本上外观一摸一样,技术也类似。都是一端PCIe,另一端高速的serdes所以Mellanox轻车熟路的切入了网卡芯片领域。


在网卡芯片领域,这个和Infiniband不同,这个市场要“内卷”的多,intel在10G网卡时代,凭借82599,X710等多个型号,可以说在服务器网卡市场上,呼风唤雨。和intel的CPU一起配合,成为了各个厂商的首选。


而在网络从10G到25G转换节点上,Mellanox异军突起,成为了市场的佼佼者,Microsoft和Mellanox深度合作,让Mellanox在25G成功上位,取代了Intel和Broadcom在高端网卡的江湖地位。同时Mellanox给网卡来了ROCE,一种基于ethernet的Infiniband的协议,这个是Mellanox的看家本领。数据中心向25G节点转换上,Mellanox成为了最大的赢家。


在2019年时,Mellanox已经称霸服务器网卡市场,是25G/100G解决方案最重要玩家之一。


Mellanox被intel和NVIDIA同时都看上了,intel开出了55亿-60亿美金的“彩礼”,而NVIDIA开出了接近70亿美金的价格。


最终NVIDIA赢了。


平心而论,intel有自己的网卡芯片团队,收购Mellanox只不过是锦上添花,而NVIDIA在网络这个方面毫无积累,所以NVIDIA更迫切,业务协同性更优,也更志在必得。


事实也证明如此!


从智能网卡到DPU,不仅是名字的称呼的改变。


说到DPU,先讲三个故事,看看DPU都干些什么东西。


1:卸载offload

 

很多刚刚入手固态硬盘的朋友,可能会对于固态硬盘容量标识产生疑惑。以某厂商 1TB固态硬盘为例,按道理来说1TB=1024GB,但是在电脑上只能看到953GB。

 

为什么?

 

因为放了一部分FTL 固件的表项,用于均衡磨损。

 

简而言之,花100块钱,只能得到90快钱的东西。

 

花两碗粉的钱,吃了一碗粉,因为有一个空碗需要承担的开销

 

问顾客爽不爽。

 

肯定不爽。

 

云服务厂商也不爽。

 

以目前的公有云为例,IaaS:Infrastrure-as-Service(基础设施即服务)

 

但是对IaaS厂商来说,和普通人买SSD面临同一个情况的窘境。

 

买了一批处理器,内存,硬盘,机房,空调,成立了一个云中心,作为基础设施提供给各位厂家来用。

 

买个100核的CPU,只能用80个核.

 

其他20个核去哪里了?

 

跑一堆云上的软件,OVS,安全,存储,管理等等。

 

这些额外20个核的开销部分,叫做数据中心税,datacenter tax。

 

所以从云厂商来说,是如何利益最大化。用行业“黑话”,降低TCO(总拥有成本)。

 

如何取消数据中心税,那就是要让DPU把这些活都干了。

 

这个故事里面。

 

DPU就是那个干脏活,累活的角色。

 

在云中心,什么脏活累活最为典型?


那非OVS卸载莫属了!

 

OVS的功能说白了,就是虚拟机VM之间的虚拟交换机,原本用软件来实现的。

 

 

说到交换机,那就是三板斧,协议解析,表项查找,动作执行。

 

二层交换机,解析MAC转发,


三层交换机,解析IP转发。

 

OVS虚拟交换机就是解析流表转发。


OVS的流表有三个特点:


1:表项长。

    从五元组,7元组,到更多元组;从端口号,源MAC,目的MAC,VLAN,源IP,目的IP,源端口号,目的端口号等,这还不算完,还有更多项需要参与转发。


2:表项多。

   从几十K到几百K的表项。随着从虚拟机到容器这些更细粒度的划分,表项也是直线增加。


3:查找时间短。

   从10Gbps小包查找大约需要60ns,到100Gbps小包查找需要6ns查找到。


有一种说法, 如果是CPU软件来实现OVS,25Gbps开销需要大约20%处理器核处理,100Gbps大约需要80%的处理器核来处理,数据中心税高了,留给业务的就更少了。


简而言之,随着网络的发展,处理器的能力跟不上了。

 

解决这个问题核心就是,将OVS 卸载(offload)到一个处理单元上来做这个业务。因为本来就是网络的业务,所以卸载到网卡上是最直接的想法。

 

 

如图所示,就是软件卸载和硬件卸载的区别。


那么DPU除了除了OVS的卸载,还有哪些卸载?


1:TCP offload;

2:TLS offload;

3:加密offload;

4:压缩的offload;

 

这些offload,最直接就是降低数据中心税。也有把这些形式叫做IPU,基础设施处理器。


但是,单纯offload,是不能称之为DPU的。

 

2:hypervisor管理


很多人都去过网吧,但是不一定都去过VIP包房。

 

VIP包房和大厅不一样。

 

独立,安全,隐私性好。


VIP身份不会有和普通客户一样的待遇。

 

这样的客户给网吧老板带了非常高的收益。

 

所以要服务好VIP客户。

 

赚钱吗?不磕碜!

 

个人用户赚钱还是企业用户赚钱。

 

大多数是企业用户赚钱。

 

作为云服务厂商,天生有两个用户,个人用户,企业用户。

 

个人用户登录,是一个虚拟机,虚拟机好处就是一个CPU拆开来卖,分时复用,分区复用,没钱就忍了。

 

企业用户和普通用户不一样,肯定是VIP服务。

 

企业用户需要什么VIP云服务?


  • 极强的计算性能,具有和普通物理机一样的计算性能;

  • 安全隔离,物理隔离,资源独占;

  • 快速交付,物理机资源标准化和池化,随取随用;

  • 和云产品连通,如果需要可以和云主机、云存储、云数据库打通,方便业务使用。


什么是云上的VIP服务,那就是裸金属云。


裸金属云就是为企业用户的量身打造的VIP包房;

 

从物理机到虚拟机,容器这些技术是演进的方向。


但是没有想到。重新包装好的物理机又成了香饽饽。

 

还换了一个高大上的名字,裸金属云。 

 

云服务商把全部的CPU资源都给用户去用了。


但是也不能放手不管。

 

怎么管,放在哪里来管。

 

用了一个hypervisor的卡来管理。


如果把CPU比喻成一个宾馆大楼,每个楼里的房间就是一个CPU core,住客就是虚拟机,hypervisor可以认为这个楼的的管理员,只不过这个管理员也要住在宾馆大楼里面,占用一个到几个房间(CPU core)。

 

现在VIP来了,整个宾馆大楼直接都给了VIP租下来了。


当然管理员(hypervisor)也不能在大楼住了,但是管理员(hypervisor还是需要的,就得给管理员(hypervisor找个家。

 

CPU里面不能住了,这个家就放在了DPU里面;

 

阿里云的裸金属云的建设中,提出了一种裸金属bm-hive(bm baremetal 裸金属的缩写),直接把bm-hypervisor 放在了一个网卡形态的设备上,在这种形态下,所有的计算资源都是计算板的一部分,这个可以是X86的E5,core I7,AMD ,甚至可以是ARM。也就是说,在这种结构下,X86的地位只是一个计算节点之一。

 

 

裸金属 hypervisor通过DPDK的vswitch和SPDK的云存储,替代了所有的计算板所有的IO需求,


裸金属 Hive支持VGA设备,供用户连接到bm guest的控制台,裸金属-Hive的架构不仅允许它无缝地集成到现有的云基础设施中,而且使计算板的设计高度灵活——唯一的硬要求是它支持virtio接口。

 

这种方案,但是其核心思想是将计算节点抽象出来,更专用,更灵活的参与到整个服务中;

 


 

这种思想提出,在AWS的的nitro卡就有了。

 

AmazonEC2的 hypervisor 专用硬件实现。当然是个精简的hypervisor,它基于Linux内核的虚拟机(KVM)技术构建,但不包括通用操作系统组件。

 

 

3:从网络到数据


DPU的核心是data。


为什么从网络到数据?


简而言之,TCP/IP的处理效率受到了极大的挑战。


对于10Gbps的网络来说,最大处理约14.88Mpps的包(64byte).

   10 000 000 000/(64byte + 20byte)*8 = 14.88Mpps。


那么对于100G的网络来说,需要处理器包的数目是148.8Mpps(64byte)。

 

而linux的kernel能够处理的能力也就是1M到几MPPS量级左右。



需求和现实,巨大的落差。


要想满足需求,bypass掉kernel,是一个所有人看到的方向。


很多kernel bypass的手段被提出了。


例如DPDK。DPDK就是一种kernelbypass的框架。DPDK通过应用层的PMD的程序不断的轮询。不用中断,而是用轮询,这个是DPDK提升性能的关键。


DPDK还需要CPU一个进程不断轮询。


而RDMA,则是更彻底的kernel bypass,CPU则直接什么也不做,数据直接送给应用层。

 


 

 

DPU就是承载RDMA的另一个载体。RDMA的协议用的是infiniband(IB)。而为了减低成本,不用部署额外的infiniband(IB)。其底层用了IP来承载,主要有两个分支,用IP/UDP承载IB是ROCEv2。用IP/TCP承载IB



Infiniband(IB)是Mellanox的强项,IB是HPC数据交换的互联协议,高性能计算就是例如超算,全球TOP500里面有60%采用了IB进行互联。

  


 

说回RDMA,那么RDMA到底干了什么?

 

除了传统的send receive。最重要的就是 read,write。

 

read,write的是什么。


是数据。


一台主机直接直接向另一台机器的虚拟内存的地址上读或者写。


这个意味着,使用外部资源就如同本地资源一样方便。


没有比这个更简单的操作了。


大道至简!

 

read和write的都是data;

 

基于这个意义上,DPU的D才开始有点意思了。

 

有趣的是,RDMA(IB)是在超算中发展起来的。

 

超算的架构都是CPU+GPU的异构。

 

超算的底层互联从来不是以太网,原因无他,以太网的效率太低了,以太网只在超算边缘作为管理网络来使用。

 

而DPU的设想中,很多资源池化的想法,和HPC有一些异曲同工之妙;

 

2020年hotchips上初创DPU公司,Fungible就有非常准确的描述。通过DPU将X86计算资源,GPU/AI资源,SSD/HDD等存储资源,作为池化资源的构成一个整体,提供外部使用。


Fungible用的技术叫做TrueFabric。RDMA的优劣不是本文要讨论的部分。


但是通过DPU把整个数据中心连接起来,实现高速率,低延迟的效果。




 


这个模型下,整个结构更类似一个边缘云中心。


不过在老哥看来,更类似超算和云融合的一种解决方案。


基于目前这个意义上,DPU的data还只是搬移,并没有在严格意义上被处理。


某些安全处理也是为了数据搬移过程的安全特性,比如IPsec over RDMA;也就是端到端的安全特性,这些数据处理是保护数据,而非改变数据本质。


这个数据搬移还包括:


1:存储数据DPU搬移:

     nvme over fabric,nvme over RMDA。


2:AI数据的DPU搬移:

     GPUdriect over RDMA。


低延迟,高带宽,高性能;


核心目标就是像本地数据一样,访问分布式或者池化的资源。


通过DPU实现数据资源池化。


网络是手段,数据才是目的。


只不过这种连接可以是RDMA,也可以是其他技术手段,RDMA只是其中之一。

 

 

4:谁来用DPU?


第一个卸载的故事中,DPU是offload CPU的负载,是“长工”。

 

第二个管理的故事中,DPU是CPU的hypervisor,是“管家”。

 

第三个数据的故事中,DPU高效的提供CPU 数据,是“奶妈”。


这些手段的目标都是降低TCO,是因为CPU来做这些工作不经济。


无论如何,DPU都不是替代CPU做计算。


在DPU上一堆处理器,来和CPU比赛干活,这个是不是比CPU更有优势?见仁见智。


DSA只有面向一个领域定制,才能有成本的优势。


所以DPU不需要在通用计算领域来搞事情。


保持数据(data)的本色,才是真谛。

 


 


最后一个问题,关于DPU,主要场景用在云上。


云厂怎么想?

    

当然是自研!


AWS的Nitro系列,以及阿里的MOC等等。都是特殊定制的DPU。目前国内几大云厂,基本上全部都有自研方案或者自研计划。


每家云的解决方案都有所不同,特别是DPU是软件和硬件紧密耦合的产物。


云厂对业务更懂,研发能力也不弱。


目前也有很多初创公司做DPU芯片,市场一片火热。


如何把DPU芯片卖给也做这个方面的云厂“竞争对手”?


这是一个比AI芯片更难的难题。




后记

“上周末的智能网卡研讨会,老哥网上听了下各路专家的演讲,云厂面临的问题多,市场能提供的大规模部署的解决方案少,头部云厂商(阿里,腾讯)都是带着自研方案而来的,FPGA+CPU倒是成了大部分公司的DPU不约而同的系统方案,xilinx和intel的FPGA成为市场的选择,也看出来DPU芯片前路漫漫,且行且珍惜,祝大家国庆快乐。



 欢迎关注:歪睿老哥,如果你觉得本文还不错,欢迎点赞,在看,分享。


往期阅读:

芯片代工产业简史-创造自己,也创造了客户

“无法破解的芯片”到底是个什么原理?

"乾坤大挪移",FPGA工程师七层技术修炼之道

苹果也来凑热闹,能否补齐RISC-V的短板?

资本宠儿慕容复,芯片创业为什么会失败?

大话手机处理器-世界上最复杂的芯片

日本芯片产业大败局

“硅仙人”Jim Keller的芯片研发封神之道

EDA工具,芯片打工人爱恨交织的宿命

矿机芯片的今天,AI芯片的明天?

云端芯片之战-小乌云还是大风暴

芯片过热?一场芯片供应链的饱和式救援。

“为了这点醋,包了一顿饺子”-AI芯片的落地之道

降低芯片流片失败风险的"七种武器"

芯片设计公司修炼的“四层境界”

中国芯片产业什么时候能够超过美国

歪睿老哥 芯片设计行业老兵,聚焦芯片行业的那些事,唯武侠与芯片不可辜负。
评论
  • 在智能家居领域中,Wi-Fi、蓝牙、Zigbee、Thread与Z-Wave等无线通信协议是构建短距物联局域网的关键手段,它们常在实际应用中交叉运用,以满足智能家居生态系统多样化的功能需求。然而,这些协议之间并未遵循统一的互通标准,缺乏直接的互操作性,在进行组网时需要引入额外的网关作为“翻译桥梁”,极大地增加了系统的复杂性。 同时,Apple HomeKit、SamSung SmartThings、Amazon Alexa、Google Home等主流智能家居平台为了提升市占率与消费者
    华普微HOPERF 2025-01-06 17:23 145浏览
  • 根据Global Info Research项目团队最新调研,预计2030年全球封闭式电机产值达到1425百万美元,2024-2030年期间年复合增长率CAGR为3.4%。 封闭式电机是一种电动机,其外壳设计为密闭结构,通常用于要求较高的防护等级的应用场合。封闭式电机可以有效防止外部灰尘、水分和其他污染物进入内部,从而保护电机的内部组件,延长其使用寿命。 环洋市场咨询机构出版的调研分析报告【全球封闭式电机行业总体规模、主要厂商及IPO上市调研报告,2025-2031】研究全球封闭式电机总体规
    GIRtina 2025-01-06 11:10 104浏览
  • 每日可见的315MHz和433MHz遥控模块,你能分清楚吗?众所周知,一套遥控设备主要由发射部分和接收部分组成,发射器可以将控制者的控制按键经过编码,调制到射频信号上面,然后经天线发射出无线信号。而接收器是将天线接收到的无线信号进行解码,从而得到与控制按键相对应的信号,然后再去控制相应的设备工作。当前,常见的遥控设备主要分为红外遥控与无线电遥控两大类,其主要区别为所采用的载波频率及其应用场景不一致。红外遥控设备所采用的射频信号频率一般为38kHz,通常应用在电视、投影仪等设备中;而无线电遥控设备
    华普微HOPERF 2025-01-06 15:29 127浏览
  • 村田是目前全球量产硅电容的领先企业,其在2016年收购了法国IPDiA头部硅电容器公司,并于2023年6月宣布投资约100亿日元将硅电容产能提升两倍。以下内容主要来自村田官网信息整理,村田高密度硅电容器采用半导体MOS工艺开发,并使用3D结构来大幅增加电极表面,因此在给定的占位面积内增加了静电容量。村田的硅技术以嵌入非结晶基板的单片结构为基础(单层MIM和多层MIM—MIM是指金属 / 绝缘体/ 金属) 村田硅电容采用先进3D拓扑结构在100um内,使开发的有效静电容量面积相当于80个
    知白 2025-01-07 15:02 75浏览
  • 随着市场需求不断的变化,各行各业对CPU的要求越来越高,特别是近几年流行的 AIOT,为了有更好的用户体验,CPU的算力就要求更高了。今天为大家推荐由米尔基于瑞芯微RK3576处理器推出的MYC-LR3576核心板及开发板。关于RK3576处理器国产CPU,是这些年的骄傲,华为手机全国产化,国人一片呼声,再也不用卡脖子了。RK3576处理器,就是一款由国产是厂商瑞芯微,今年第二季推出的全新通用型的高性能SOC芯片,这款CPU到底有多么的高性能,下面看看它的几个特性:8核心6 TOPS超强算力双千
    米尔电子嵌入式 2025-01-03 17:04 55浏览
  •     为控制片内设备并且查询其工作状态,MCU内部总是有一组特殊功能寄存器(SFR,Special Function Register)。    使用Eclipse环境调试MCU程序时,可以利用 Peripheral Registers Viewer来查看SFR。这个小工具是怎样知道某个型号的MCU有怎样的寄存器定义呢?它使用一种描述性的文本文件——SVD文件。这个文件存储在下面红色字体的路径下。    例:南京沁恒  &n
    电子知识打边炉 2025-01-04 20:04 100浏览
  • 大模型的赋能是指利用大型机器学习模型(如深度学习模型)来增强或改进各种应用和服务。这种技术在许多领域都显示出了巨大的潜力,包括但不限于以下几个方面: 1. 企业服务:大模型可以用于构建智能客服系统、知识库问答系统等,提升企业的服务质量和运营效率。 2. 教育服务:在教育领域,大模型被应用于个性化学习、智能辅导、作业批改等,帮助教师减轻工作负担,提高教学质量。 3. 工业智能化:大模型有助于解决工业领域的复杂性和不确定性问题,尽管在认知能力方面尚未完全具备专家级的复杂决策能力。 4. 消费
    丙丁先生 2025-01-07 09:25 80浏览
  • 彼得·德鲁克被誉为“现代管理学之父”,他的管理思想影响了无数企业和管理者。然而,关于他的书籍分类,一种流行的说法令人感到困惑:德鲁克一生写了39本书,其中15本是关于管理的,而其中“专门写工商企业或为企业管理者写的”只有两本——《为成果而管理》和《创新与企业家精神》。这样的表述广为流传,但深入探讨后却发现并不完全准确。让我们一起重新审视这一说法,解析其中的矛盾与根源,进而重新认识德鲁克的管理思想及其著作的真正价值。从《创新与企业家精神》看德鲁克的视角《创新与企业家精神》通常被认为是一本专为企业管
    优思学院 2025-01-06 12:03 119浏览
  • PLC组态方式主要有三种,每种都有其独特的特点和适用场景。下面来简单说说: 1. 硬件组态   定义:硬件组态指的是选择适合的PLC型号、I/O模块、通信模块等硬件组件,并按照实际需求进行连接和配置。    灵活性:这种方式允许用户根据项目需求自由搭配硬件组件,具有较高的灵活性。    成本:可能需要额外的硬件购买成本,适用于对系统性能和扩展性有较高要求的场合。 2. 软件组态   定义:软件组态主要是通过PLC
    丙丁先生 2025-01-06 09:23 85浏览
  • By Toradex 秦海1). 简介嵌入式平台设备基于Yocto Linux 在开发后期量产前期,为了安全以及提高启动速度等考虑,希望将 ARM 处理器平台的 Debug Console 输出关闭,本文就基于 NXP i.MX8MP ARM 处理器平台来演示相关流程。 本文所示例的平台来自于 Toradex Verdin i.MX8MP 嵌入式平台。  2. 准备a). Verdin i.MX8MP ARM核心版配合Dahlia载板并
    hai.qin_651820742 2025-01-07 14:52 48浏览
  • 根据环洋市场咨询(Global Info Research)项目团队最新调研,预计2030年全球无人机锂电池产值达到2457百万美元,2024-2030年期间年复合增长率CAGR为9.6%。 无人机锂电池是无人机动力系统中存储并释放能量的部分。无人机使用的动力电池,大多数是锂聚合物电池,相较其他电池,锂聚合物电池具有较高的能量密度,较长寿命,同时也具有良好的放电特性和安全性。 全球无人机锂电池核心厂商有宁德新能源科技、欣旺达、鹏辉能源、深圳格瑞普和EaglePicher等,前五大厂商占有全球
    GIRtina 2025-01-07 11:02 71浏览
  • 这篇内容主要讨论三个基本问题,硅电容是什么,为什么要使用硅电容,如何正确使用硅电容?1.  硅电容是什么首先我们需要了解电容是什么?物理学上电容的概念指的是给定电位差下自由电荷的储藏量,记为C,单位是F,指的是容纳电荷的能力,C=εS/d=ε0εrS/4πkd(真空)=Q/U。百度百科上电容器的概念指的是两个相互靠近的导体,中间夹一层不导电的绝缘介质。通过观察电容本身的定义公式中可以看到,在各个变量中比较能够改变的就是εr,S和d,也就是介质的介电常数,金属板有效相对面积以及距离。当前
    知白 2025-01-06 12:04 173浏览
  • 本文介绍Linux系统更换开机logo方法教程,通用RK3566、RK3568、RK3588、RK3576等开发板,触觉智能RK3562开发板演示,搭载4核A53处理器,主频高达2.0GHz;内置独立1Tops算力NPU,可应用于物联网网关、平板电脑、智能家居、教育电子、工业显示与控制等行业。制作图片开机logo图片制作注意事项(1)图片必须为bmp格式;(2)图片大小不能大于4MB;(3)BMP位深最大是32,建议设置为8;(4)图片名称为logo.bmp和logo_kernel.bmp;开机
    Industio_触觉智能 2025-01-06 10:43 87浏览
我要评论
0
点击右上角,分享到朋友圈 我知道啦
请使用浏览器分享功能 我知道啦