,孵化于中科院计算所、产品用于数据中心的国内DPU芯片公司中科驭数发布基于28nm制程的第三代DPU芯片K2-Pro,以及芯片软件、智能网卡、低时延网卡、驭云高性能云底座开发平台等一系列产品。
这是继2022年底,中科驭数第二代DPU(数据处理单元)芯片K2成为首颗成功点亮的国产DPU芯片后,又一次新的升级。同时,K2-Pro也是国内首颗面向量产的全功能DPU芯片产品。
清华大学教授、中国工程院院士郑纬民在会上表示,大数据、算法和算力慢慢的变成了 AI 产业高质量发展的“三驾马车”。而DPU芯片被称为是数据中心继CPU、GPU之后的第三颗主力芯片。作为数据处理器,它承担数据网络传输、存储、计算、安全等任务,是重要的新型算力基础设施。
“算力是数字化的经济的底座,没有算力,做不了ChatGPT。芯片是算力的核心,是算力提升的关键。”郑纬民称。
会后,中科驭数创始人、CEO鄢贵海对钛媒体App等表示,生成式 AI 浪潮引发数据处理需求增加,凸显了DPU产品的重要性。
他透露,预计到2025年,中科驭数将推出14nm制程的第四代DPU芯片K3,采用最新KPU架构以及KISA 2.0指令集,集成RISC-V轻量级控制核,处理带宽将是K2-Pro的四倍,达到800G,延迟低于1微秒,功耗比K2-Pro下降40%。
鄢贵海强调,预计2024年全年,中科驭数DPU芯片K2-Pro的出货量超过1万片。公司预估未来三年内,DPU产品出货量将突破百万量级,同时整个网络带宽领域的占有率能达到30%。
据悉,中科驭数成立于2018年,孵化于中科院计算所计算机体系结构国家重点实验室,是一家聚焦于专用数据处理器的研发设计企业,致力于解决后摩尔定律时代通用算力不足的核心问题,为智能计算提供DPU芯片和解决方案。公司创始人鄢贵海还担任中科院计算所研究员、博士生导师,主要研究专用计算机体系结构。
DPU是面向基础设施层的数据处理单元,也是未来算力网络的核心基础设施,将被大范围的应用于超低延迟网络、大数据处理、5G边缘计算、高速存储等低时延、数据密集型计算场景。类似思路很早就存在于市场当中,业内称之为“智能网卡”(SmartNIC)。
英伟达则将DPU这一概念重新推向时代潮头中。2020年4月,英伟达以69亿美元,完成对以色列网络芯片商迈络思(Mellanox)的收购。随后在2020年10月,英伟达推出首款DPU芯片。
英伟达CEO黄仁勋曾表示,CPU(中央处理器)、GPU(图形处理器)、DPU是数据中心的“三大支柱”。因为加上DPU后,网络、存储、安全和虚拟化等基础功能将由DPU驱动,与CPU之间增加隔离层,可解决黑客通过云端入侵数据中心等问题。
鄢贵海对此有一个生动的比喻。他认为,如果把一台计算机或服务器比作一个人,把CPU比作大脑、那么GPU就好比是肌肉、而DPU就是神经中枢。CPU承载了应用生态,决定了计算系统是不是能够通用;GPU提供了高密度各类精度的算力,决定了系统是否有足够的“力量”;DPU负责数据在各种CPU和GPU之间高效流通,决定了系统是否能协同工作。
目前,国际上做DPU的企业主要包括英特尔、英伟达、AMD、微软、Marvell(迈威尔科技)、Broadcom(博通)等芯片巨头,而国内在DPU领域布局的厂商达30家左右。
融资方面,成立的六年间,中科驭数已完成四轮融资,投资方包括金融街资本、华泰创新、国新思创、中科创星、昆仑资本、灵均投资等机构。
在硬件产品研制层面,至今,中科驭数已经开展了三款DPU芯片的研发迭代。2019年流片了第一代DPU芯片K1,第二代DPU芯片K2,如今是第三代的K2 Pro。而基于DPU芯片技术,中科驭数有三大DPU卡系列:思威SWIFT、福来FlexFlow、功夫Conflux。
中科驭数联合发起人兼CTO卢文岩在演讲中表示,中科驭数第三代DPU芯片K2-Pro DPU芯片是专为破解大规模数据中心性能瓶颈而生的高效能数据处理芯片,基于自研的KPU和KISA指令集架构,包处理速率翻倍至80Mpps,最高支持200G网络带宽,具备高度可编程性,确保了系统的灵活扩展性,为数据中心的业务增长和算力扩容提供坚实基础。在处理复杂任务时,K2-Pro相比上一代芯片能耗降低30%。作为一款纯国产的高性能解决方案,K2-Pro适用于云计算、智能计算及高性能计算等领域,可助力数据中心应对日渐增长的规模和性能需求。
谈到 AI 领域 DPU能发挥哪些更大价值点,卢文岩向钛媒体App表示,对于生成式 AI,数据量特别大,DPU尝试做优化,K2-Pro芯片里面有可编程的处理引擎,团队也在针对特定的场景做一些类似构架的升级开发,在数据通路上做一些事情。
市场应用与商业化层面,DPU产品主要使用在于金融、数据中心等场景。中科驭数已经在云数据中心、智算中心、金融计算等领域有上百家客户深度市场合作落地。和几十家国内主流算力产业链合作伙伴完成兼容认证,并建立战略合作关系 。
另外,在会上,中科驭数还公布DPU敏捷异构软件开发平台HADOS 3.0、基于K2-Pro芯片的三个系列6大DPU卡产品、驭云高性能云异构算力解决方案等。
其中在硬件层面,GPU领域,英伟达之所以能够“一骑绝尘”,是因为其很早就设计出了CUDA架构。而中科驭数称,此次升级,K2-Pro DPU芯片采用了自主研发的KPU(Kernel Processing Unit)架构,该架构以定制化的功能核作为基本单元,直接对上层应用中计算密集型任务进行抽象,集网络、存储、安全及计算等多业务卸载功能于一体,这也是该芯片升级的“秘诀”之一。
在软件层面,中科驭数表示,对比英伟达DPU的DOCA,和Intel IPU的IPDK,驭数HADOS在不少方面都有独特的沉淀和积累,HADOS 3.0在高性能云原生网络,尤其是微服务治理、运维管控、仿真模拟、生态适配、国内安全加解密、以及最重要的人工智能场景下,国产AI和GPU适配均占据了明显的优势,HADOS已经站在了业界的最前沿,与业界巨头竞争角力。
鄢贵海向钛媒体App等坦言,英伟达已经是一个“大象”,大象专属权力就是慢,慢慢吞吞的,虽然IPU定位很好,基础也不错,但是总是感觉迭代非常慢。而DPU某一种意义来看定位作用应该要把能够承载类似NV-Link的互联搭在上面。而K2-Pro很好能够解决这类关键性需求。
在郑纬民看来,DPU芯片作为重要算力基础设施,在实现自主可控方面也具备极其重大的战略意义,“国外厂商英伟达、英特尔、AMD都有推出相应的DPU产品。面对新形势新要求,国产DPU要持续加强基础研究,充分的利用资源和技术优势,紧密围绕产业创造新兴事物的能力和产业链完整新发展,深入推动核心技术突破,打造核心技术制高点。在DPU这一领域我们也要打破国外芯片巨头的垄断,助力算力领域的安全自主可控。”
“回顾在50年前,当英特尔发布他们最重要的CPU的时候,中国还没有改革开放。30年前英伟达发布了起死回生的GeForce系列GPU,国内我们还处于浓浓的“做不如买,买不如租”的氛围中。在4年前,当DPU成为了风口浪尖,成为热点的时候,这时候我们终于领先了2年出发,这一次,我们终于有希望不仅是起得早,还希望能赶上早集。我们更希望,人们以后记住Intel=CPU,Nvidia(英伟达)=GPU,而中科驭数=DPU,让DPU也等于中科驭数。”鄢贵海在演讲结尾表示。
事实上,目前火热的AIGC应用中,AI大模型的训练往往同时使用数千或数万个GPU芯片,整个服务器集群规模达到10万+,此时DPU能支持超大规模组网算力互连,并可支持200G+的超高带宽,是AI产业高质量发展的“加速器”。
郑纬民强调,“DPU产业慢慢的变成了国内外竞争的新焦点,在未来数据中心、智算中心等高带宽、低时延、高吞吐的应用场景都将发挥及其重要的作用,为东数西算、算力网络等重要新型算力基础设施建设提供核心组件。”
以下是鄢贵海与钛媒体等媒体的对话速记,经钛媒体AGI编辑整理,有删减:问:今天说了很多“重新定义DPU”,这怎么理解?
鄢贵海:为什么叫重新定义DPU?我们重新定义DPU有两个维度能够理解,第一我们现在认为DPU已经不单独是单纯的芯片事情,所以今天下午我们发布的时候叫架构决胜,这主要是芯片层次的。另外叫软件护城,基础软件包括最后的平台要上门,这是DPU软硬件技术在云里面的落地深耕。我们现在认为要把DPU做好其实要在这三个层次都要同时下工夫才行。所以这是第一个维度。
第二个维度,所谓重新定义是跟DPU本身一个是目标应用我们要跟原来狭义理解上的DPU不一样,可能大家很多对DPU的理解都还觉得DPU是做一些卸载,做一些CPU业务的卸载。这个第一是特别老旧的观念,第二是很误导性的观念,因为今天DPU应用绝对不单单是卸载一点CPU上的负载那么简单,有些任务不仅GPU干不了,CPU也干不了,比如处理安全上的业务,比如做分布式安全机制,这些业务都是CPU本身不太能有效处理的,而在DPU上面做这件事情就会非常简单。
今天我提到叫DPU,是咱们进行算网融合的关键组件,其中网中有算这件事情只有DPU可以干,这种负载类型其实不是在所谓的CPU可以处理。
DPU首先定义要分层次,不能单纯只搞芯片这一件事情。第二个事情,DPU本身它的功能应该要跟原来狭义理解的DPU卸载CPU的负载局限的视角去看它,而应该是更广,更甚至于现在看计算机系统的时候其实看的分布式大的集群性系统,我们对于资源的理解,对于它上面承载好的负载类型都要跟原来对单机、单个服务器视角明显不同。
鄢贵海:DPU本身作为算力基础设施里面核心的组件,它有一定通用性,也就是说需要提高你的计算集群效率,需要提高你的计算集群运维水平,需要提高你的集群本身算力大小,把它切换到DPU方案类型上都是非常好的一种选择。这也就从另一方面代表着本身DPU有一定的通用性,只要你的客户的真实需求有升级改造需求,那我觉得DPU就是很好的选择,如果业务量还比较小,可能每天就处理几个文档,那就没有必要了。
问:商业化这块,这次K2-Pro定位于面向大规模商用,今天会上也看见很多高校和科研单位,高校教育行业也是我们的一个目标市场么?决定能不能大规模商业化,技术能力上的因素在于什么?
鄢贵海:能不能大规模商业化有三点,第一点,你的成本,一颗DPU卖5万块钱,做得再好也没有希望,都不太可能大规模商业化。现在DPU通常都不便宜,英伟达的DPU也很贵,三四千美金以上。成本上要想达到比较大规模的量产,还要逐步降低成本。
第二个,软硬件成熟度问题,就像今天郑院士讲整个DPU趁着AI对算力基础设施要求才发展起来的。而AI对于整个算力需求才多少时间?其实我们是比较新的趋势。原来数据中心里面没有DPU的,但是今天我们正真看到对于随着本身算力的需求,对于本身算力基础设施系统结构从原来网络、交易节点、分布式,现在朝着“三U一体”演进的时候就慢慢起来了。尽管趋势是对的,但是所有趋势沉淀需要时间,对大的芯片来讲3-5年就想让它走到成熟这是不现实的,也得5-10年才能成熟。我觉得其实是比较中性的,甚至偏乐观的预测,它在发布的时候也没有预料到后面过去一两年大模型那么火,对算力要求那么快,也许AI算力需求会加速DPU的成熟。
但是它只是会加速,放在当前眼下节点,为什么K2-Pro能够作为面向量产的全功能芯片走在前面,很显然整个行业的应用还没那么成熟。这也是一个原因为什么驭数不仅做芯片、基础软件还有云原生应用的原因,那么多云厂商,为什么我们要做云原生应用?如果我们不做,我觉得整个DPU大规模部署可能还会需要很久,因为最懂DPU的人不是云厂商,而是我们。某一种意义来看我们不难发现云里面应用难度其实比云的厂商理解DPU难度还是要低的,所以我们愿意花一点资源在云的示范应用上。实际上的意思就是想缩短DPU规模化部署的路径,让三个层次DPU接触更多不一样的客户,如果客户做云,有云的方案帮助你,如果做驱动,做SaaS的也有HADOS平台,如果就只做底层硬件集成的,就是做硬件方案的,也没问题,可以直接把DPU芯片给你,你在上面自己搭。我们基本能把不一样生态客户都可以纳入进来,这是非常有利于DPU迅速从示范应用扩展到到规模化部署的路径。
第三个因素,为什么驭云里面会做这个示范案例?甚至会面向科研机构、高校,这也是我们驭数下的一步棋,从学科发展而言,我觉得是过去十年计算机体系里面很核心的内容都没有变化,今天学生教科书里面写的东西是比较老旧的东西。他们考试的东西还是冯诺伊曼,最经典的五级流水线。我们特别希望高校、研究所,有研究生教育的机构,他们的研究生应该要研究最新的技术趋势,研究最新的技术产品。这块怎么能让他们更快接触到呢?我们愿意把整个DPU包括DPU仿真器向他们免费开放,可以让他们更早的接触到我们在先进网络,下一代算力基础设施里面的计算机系统结构,新的技术趋势,新的变化,等他们用3-5天完成研究生、硕士博士教育的时候,他们脑子里装的就是“三U一体”架构,这样才可以更好真正推动未来的算力经济发展。
我不觉得在教育里它是因为市场小,然后就不值得做,反而我觉得很值得做,因为今天是学生,明天就是专家,甚至是你的客户,甚至他们会在你的基础上发展更新的产业,这些其实都是一个产业能够良性发展的基础。
说到底一个行业要发展,你必须要有相应人才基础,而人才是要用更长的时间维度去布局,把你的所关注的技术趋势植入到现在的教育方向里面去。这点美国做得比我们要好,不管是英特尔也好,还是早期IBM,他们实验室都是在美国很多常青藤高校实习生圣地,他们有这个传统,中高年级研究生一定要实习的,实习最好地方在英特尔,在IBM,再加上后面有谷歌等等一线科技公司,所谓产教融合做得挺透彻的。他们要真正用我们的东西,研究下一代网络技术的时候能用我们平台去做,这样做才能够把科研整体创新水平提到一个更高的高度。只要驭数还在做这个方向我们就会持续做这件事情。
问:英伟达最近更新它的路线图的时候,DPU不像前两年BF2、BF3,现在除了Link,以太网网络站点平台做更迭,不能说它弱化,它把DPU做了很多平台内部核心支撑。这对于国内第三方DPU初创企业来讲会有哪些启发?
鄢贵海:这样的一个问题特别好,因为对于IT技术发展来讲当它把技术摆到桌面上的时候,大家特别容易判断谁的技术高,谁的技术相对落后,它是非常容易判断的。
英伟达搞的一体化技术,重型游戏,对于国内做算力、做大芯片相关的厂商,我觉得一个非常好的指向,包括网络他可以做400G、800G,包括它现在把GPU跟DPU在一起,这也是未来我们国内做算力芯片产业你们可以真正参考的事情,因为别人已经走通了那条路,我觉得是很值得关注的。
但是也要看到,我觉得我们国内本身芯片产业发展,跟别人是有代差的,我们不仅仅是在工艺上补一些作业,结构设计上面仍然有差距,更重要的是产业成熟度,英伟达一家市值3.43万亿,这时候拿一个体量只有1%的企业跟它做同样的东西,还要全方位超越或者全方位接近,这其实是不现实的。这个产业成熟度需要时间的,暂且不说需要英伟达那么大的级别,但是也弄出几家稳定的市值千亿以上的企业,还是需要时间的。我们需要一些龙头企业,国内对于芯片设计企业来看几百亿规模的就算很大了,最大的海光一千多亿,其他好多都是百亿,到几百亿就算已经很大了。
我们判断一个行业程度怎么样,要看这个行业有没有一众比较有规模的企业竞争才是真正高水平的竞争,才能代表行业的成熟,现在还没有到这一步。我觉得如果说别人是大学生水平,那我们可能就是小学生水平,这块干的事情要补课,耐心一个题一个题把它做好,等待时机慢慢更加成熟去做。
这点聚焦非常重要,要做DPU就做DPU,像英特尔再分一半力量做CPU,再分1/3做GPU?我觉得要在每一个阶段上都要有高质量的企业,在单品上能够做到领先,企业先要做到单向冠军,然后再寻求未来的发展。而未来它会怎么样,这不完全是技术决定的,GPU和CPU在一起是非常好,能够提高更高的算力,但是决定这件事情的背后还有商业原因,两家都是龙头企业,一家CPU的,一家GPU的,他们愿不愿意结合起来?这个很难讲,背后还有商业原因。包括像英特尔他们不想做GPU吗?也很想做,包括英伟达不想做CPU吗?也很想做,要买ARM还没有买成。最后这个产业会到什么样?影响因素太多了,根本没法预测。但是对于一个企业在自己专项上面能够做到多好,这个事情可以判断。
鄢贵海:智算中心网卡的功能,首先要解决的是GPU跟存储之间,GPU和GPU之间通信问题,这些路径里面是带宽最高,流量最大的数据路径,反而GPU跟CPU路径没有那么显著,原来网卡解决网络数据进来以后通过PCIe设备接入主机里面,并没有对带宽要求高到需要特殊待遇。这种情况下传统网卡不太适用于担任未来智算中心的网络接口的角色。
DPU要支持类似于GBR、GBS的负载,就是给GPU和GPU之间的通信,GPU和CPU之间的通信找到一条快速通路,这个快速通路要搭建在全新的网络设备接口上,全新的网络接口就是DPU。所以基于此,我觉得未来智算中心里DPU的用量不仅不会少,还会越来越多。
当然,数据中心那么复杂的网络结构,通常它的网络不可能只有一套,因为它的不同网络要用不同的功能,运维、管控、监控用传统以太网做,智算用无损RDMA的网络。这种情况下在智算中心里面它有用传统网卡的需求,但是更大的需求,增长更快的需求还是在高速网络上,高速的RDMA,无损网络上。
问:关于私有架构是数据的架构通过软件实现,对于开放工具应该要求很高,经过了三代产品的打磨还有迭代升级,能分享一下这方面的心得经验吗?
鄢贵海:当时选DPU技术路线也是有原因的,对体系结构来讲很难创造新的结构,做数据流架构和非数据流架构,没有其他选择了,你要么就是控制驱动,要是数据驱动,还有其他选择吗?设计空间上早给你布好了,只不过是你愿不愿意开发它的问题。我们选择数据流架构本身在技术路线上做了一个选择,数据流架构本身是不完全新的东西,至少从概念来看我觉得它是我们在体系结构领域早就相对比较成熟理念,人家说没有不好的技术路线,只有不适用的技术路线。DPU里面用数据流架构非常适应,就像你穿高跟鞋老爬山就不对,但是逛商场很合适。同样的道理,数据流架构针对DPU而言是非常切实的有效。而且数据流架构原来很多缺点也许在DPU里面都不太出现,而数据流架构原来很多优点可以在DPU里面得到充分的启用,专业的人干到这儿一定会这么选择的。
刚才您提到编程,数据流架构它的编程受到约束条件确实比原来通用CPU,所谓控制指令编程可能稍微不能说复杂,只不过对于数据抽象不一样。他看到的语言不一样。就像两门语言,其实它的表达能力是一样的,但是我觉得中文简单,因为我熟,我觉得法文看不懂,所以觉得它难。但是他们要讲的东西是同样的东西,只不过属于技术里面不同的体系而已,一旦发现你在法国你就觉得它很好,这是同样的道理。
这块怎么把数据流架构通过编程软件把它的优势释放出来,这也是我们需要KISA的重要原因,KISA是驭数的老概念,大家有没有感受到驭数跟K特别有用,我们提KPU,指令集的KISA,HADOS的前身叫KOS。我们没有刻意的非得跟K过不去,但是我们后来在做技术布局的时候,做验证的时候不知不觉的K又向着我们迎面奔来的感觉,慢慢变成了驭数自己的技术体系。
在这块如果有了经验的话,第一个经验就是对于DPU提了相对完整的指令集,有了这个以后相当于定义了一套language,只要有了这个定义,学language这件事情就是时间问题,而且更何况对于任何一门语言跟任何一个指令一样,最开始指令不会特别丰富,即便到现在1.0也不过120条指令,英特尔X86指令是过千的,数量相比是小巫见大巫。
所以我们觉得不要过分的多虑开发者学习能力,只要你把语义讲清楚,量控制在一定程度,对于绝大多数很多开发者而言,他还是可以接受的。
其二,光有定义还不行,后面相应配套,相应的像示范案例都要做的,而且对于指令定义而言很少有指令定义完了以后就是完美的,定义完了以后还得用它表达你的示范应用,表达一个案例,好像这块有冗余信息,回去把指令改一改,还有指令的域面对的情况比较复杂,需要更多的信息,把它的字长适当的扩大,这些其实都是在不断打磨的过程中,从使用中回过来优化指令设计,再指导一些案例的开发。
迭代以后,我们驭数6年,KISA今天发布才把它叫做1.0,这个过程很难关起门来讨论一个星期就定了,管它好不好这就是基础了,不是这样的。这点上有了定义以后同步开发过程中就会完善整个编译的系统,包括不断的跟上层语言做交互,比如P4,他上面做编程,我们下面用KISA对它进行编译,包括上面用C表达,下面用KISA表达底层语义。中间就是经典的编译过程。
对于非编译专业的人觉得好像很难,相当于让一个不懂语言的人让他当翻译也是一样的,其实对于当翻译的人来看觉得无所谓,只要你的两边语义从描述能力来看是等价的,这个翻译一定有可行解的,只不过效率高一点低一点,效率总是可以迭代优化的。这点我们很重视。
所以整个HADOS的ADP部分为什么专门把里面支撑各种各样的,在有可能的地方做更好的分装面向开发者。但是我们也不丧失一些对底层的控制,可以用特别底层的指令控制DPU单元里面的行为。有了开放性以后就知道架构不再是黑盒子,而是只要你想去看,只要你想去优化它里面的性能,你总能够找到渠道,总能够找到切入点,更开放的体系。
这也是我们整个IT行业尤其是做算力芯片行业大家以后殊途同归的那条路。现在大家也在讨论硬件开源的问题。也有开源芯片的理念。这个方向也是需要我们来关注的。