arm在数据中心的价值:黄氏定律背后,英伟达打的什么算盘? -凯发app
文章来源:电子工程专辑 发布日期:2020.12.31 浏览次数:7303 次 |
在aspencore全球分析师共同发布的一文中,有一项提到了,hpc数据中心专用加速的趋势递进。其中特别提到英伟达的dpu,这种类型的硬件,几乎可以代表数据中心的某一个发展方向。
这个议题甚至恰好能够解答,英伟达为何要收购arm,以及amd为何要收购赛灵思。在近期英伟达gtc china首日主题演讲之后的圆桌论坛上,英伟达全球业务运营执行副总裁jay puri谈到了有关英伟达收购arm的问题。
“arm已经取得了巨大成功,但他们获得的成功大部分集中在移动端,更多的机会在等待他们探索。arm应当发挥显著作用的地方,还包括数据中心与pc。但这个市场的涉足其实并不简单,数据中心、云和pc领域是另一回事。”jay puri提到,“从技术上来看,arm在这一领域是完全没问题的。很多探索中的例子都表明,技术不是问题。”
“在市场方面,数据中心未来的重要工作是围绕人工智能、加速计算的。英伟达在这个平台很成熟,我们有可用的完整堆栈,有所有必要的凯发k8官网的合作伙伴,生态系统庞大,有超过200万开发者;很多初创企业、行业研究都在进行中。”“一旦arm成为英伟达的一部分,我们将能够促进arm在数据中心取得成功。”
“这样一来,市场就会有x86之外可行的替代方案,不仅限于移动领域,数据中心、pc等领域都如此。竞争能够促进进步、推动创新。”这番话实则已经非常明晰地交代了,arm对于英伟达的主要价值在哪里:数据中心(和可能的pc)。本文尝试扩展hpc数据中心的专用加速趋势这一话题,亦可从中看看英伟达的野心有多大。
arm对数据中心的作用有多大
2020年,hpc领域在相关芯片架构层面发生过一件大事:富士通(fujitsu)发布名为富岳(fugaku)的超算,其中的芯片为a64fx。这颗芯片在微架构层面其实是很有意思的。首先它整体上采用monolithic的设计,而不是现在流行的chiplet(比如amd epyc)。它既像cpu,又有点儿像gpu,而且片上还集成了hbm2存储——这样一来,a64fx的板卡就比较奇特:板卡上没有ram,因为已经集成在了片上(chip level)。
我们来简单看看这颗芯片微架构的独特之处。从上面这张图来看,核心周围的4个die就是hbm2存储,连接到四个hbm2 interface之上,算是与核心靠得很近了,所以主内存到l2 cache的带宽就会比一般的hpc系统要明显更大(1024gb/s),单芯片的容量也达到了32gib。
核心部分,a64fx整体上是基于arm v8.2a架构的,扩展了sve(scalable vector extensions)——这种扩展是专门针对hpc科学负载矢量化准备的,属于neon扩展指令集的补充。a64fx具体采用的是512bit sve。这一点其实并没有什么。
这颗芯片真正有意思的地方是,它并没有什么加速器,die上也没有集成专门的gpu之类的处理器。其行为方式很像gpu,但却是颗实实在在的通用cpu。a64fx内部总共分成4组,分别是4个cmg(core memory group),每组13个核心(所以总共是52个核心,其中48个是活跃核心,其余4个为os以及冗余策略预留)。cmg内部每个核心依次连接,而不同cmg之间采用类似于intel skylake的那种ring bus环形总线连接。作为一颗通用处理器,a64fx就是可以跑常规操作系统的,虽然它内部看起来还挺像英伟达的gpu。
这颗芯片在设计上就是为hpc负载准备的,尤其是科学模拟、数据分析等。现在比较主流的方案,是用gpu来加速这些活儿,主要是因为gpu能够灌入大量数据,并做高度并行计算,然后同时输出大量结果。事实上,hpc的存储带宽需求一直很大,包括气象模拟、各种流体力学、量子力学等研究,以及计算机视觉、机器学习一类数据分析工作,都要求大量数据的迁移,在大量核心之间通讯、共享。
a64fx从设计思路上,也能干这样的工作:持续做simd计算,而且还有不小的片上存储资源和相当大的传输带宽。另外富士通开发了一种名为“tofu”的互联方案,据说在能效、带宽和延迟方面表现都非常好,宣传上提到是显著优于amd和intel的方案的(据说是比xeon/epic,有10倍的能效优势)。此外,sve矢量扩展,及其对fp16、fp32等数据类型计算的原生支持,都令其相当适用于hpc负载。
从已公开的数据来看,a64fx单芯片在性能上也远优于intel xeon platnium 8168、nec sx-aurora这类方案,以及部分测试优于nvidia上代的tesla v100。其实相较传统通用cpu的性能优势还是意料之中的。因为a64fx从设计上来看,是明显更偏向专门针对hpc做了"domain-specific"的优化的,与此同时还保有了cpu的通用性。
用简单的话来概括a64fx的思路,它很像把hpc方案中cpu gpu ram的传统组合凝聚到一起,另外也有比较全面的大规模扩展方案。这颗芯片预计2021年会出货给亚马逊、谷歌、微软这些云供应商。
当然不能就性能、效率,以及其设计就简单认定,a64fx就一定能够在hpc领域掀起多大的浪,生态构建也属于重要的工作。但很显然,arm在hpc、数据中心之上发光发热,至少就技术、性能层面来看,是没有任何问题的;而且arm具备了相当的弹性,是x86平台可能无法给予的;另一方面,arm在端侧正在对x86发起新一轮猛攻,这可能也将有助于arm在数据中心的生态构建。
gpu在数据中心的发展令人咂舌
富岳以及a64fx的发展思路未必就代表了数据中心的未来,电子科技及半导体领域从来不是效率、性能说了算的,而且我个人也觉得a64fx在微架构层面虽然有创新,但它作为一种通用芯片,在专用计算的"domain-specific"这一点上仍然可轻易被超过;比如几个月前,就特别提到了,算力相较a64fx的超越。
老祖宗构建起来的架构,其实很难在短期内被轻松推翻。只不过传统cpu gpu ram的发展方向,本身就在不停发生变化。就好像多年前应该不会有太多人想到,gpu、fpga加速卡这类硬件可以在数据中心活得这么滋润。
英伟达最伟大的发明,大概就是cuda和gpgpu了。这将gpu扩展到了更多市场。2016年黄仁勋在geforce 1080 ti发布会上提到最多的词还是rendering和graphics;但在2020年geforce 30系列gpu的发布会上,graphics这个词被提及的次数却远远少于rt core、ai等。这表明英伟达的gpu市场,早就扩展到了游戏、图形计算之外。
即便amd刚刚发布的radeon gpu在性能上将近做到与ampere架构geforce的齐头并进,amd radeon的市场与英伟达依然是不可同日而语的。
我在中提到,2015-2019年英伟达的营收增长速度之快,令这家公司不像是个已经步入成熟期的企业。这主要是源于gpu在数据中心业务上的风光正盛。而且这个趋势在2020年竟然还在持续,甚至可以用“飙车”来形容。
英伟达数据中心业务云霄飞车般的营收增长
英伟达最新一季(fy2021q3)的财报显示,公司季度营收47.3亿美元,上涨57%。值得注意的是,其中数据中心业务的营收同比增长达到了162%——而且这还是在持续多年增长之后的持续增长。在谷歌云、微软azure之后,aws、oracle cloud、阿里云都相继宣布了nvidia a100可用;选择英伟达平台针对ai相关服务做ai inference越来越多;当然英伟达数据中心业务的强势,也离不开mellanox在infiniband等方面的增长。
相较之下,英伟达游戏业务37%的增速虽然也很亮眼,却在增长性上相形见绌了。专业视觉以及汽车业务的营收下滑,也就显得没那么重要了。去年的分析文章中,我曾大致估算数据中心业务占到英伟达整体营收的1/4,仅次于营收占比过半的游戏业务。今年的情况预计又会发生较大变化。以这种成长速度,数据中心很快就会成为可与其游戏业务相提并论、并驾齐驱的业务了。
这其实很大程度上代表了数据中心市场,gpu这类型的硬件已经占据了多重要的地位。可见市场对于性能和效率的渴求还是疯狂的,何况数据中心市场客观上还受到了新冠疫情的推动。
那么这和arm又有什么关系呢?
dpu是英伟达野心的承载
英伟达也在gtc china期间宣布,多家中国顶级云服务提供商及系统制造商采用其a100 tensor core gpu。阿里云、百度智能云、滴滴云、腾讯云等云服务提供商都推出了搭载a100的云服务及gpu实例。a100是英伟达这一代ampere架构,定位在数据中心平台的gpu产品,被英伟达称作“最强性能的端到端ai以及hpc数据中心平台”。
ampere架构是英伟达在2020年年中正式官宣的。消费端的geforce 30系列,以及上述a100都可以说是ampere架构产品。实际上英伟达如今在热推的另一类产品,文首提到的dpu也有ampere架构gpu的身影:bluefield-2x dpu板卡上就加入了一枚ampere架构的gpu,用于ai加速。
这里的dpu是相当值得一谈的。抛开ampere架构不谈,在前两个月的gtc大会上,英伟达正式宣布了bluefield-2/2x dpu(data processing units)的推出。dpu这个概念最早应该是mellanox提出的。英伟达在新闻稿中提到,dpu采用data-center-infrastructure-on-a-chip架构,“突破性的网络、存储和安全性能”。直译过来,就是芯片上的数据中心基础设施。
本月gtc china期间,好几篇来自英伟达的新闻稿都提到了dpu或相关信息:包括公有云厂商ucloud基于英伟达的bluefield dpu研发,“并于上半年推出的裸金属物理云1.0产品,通过dpu集成的多核arm cpu快速将物理云基础架构软件从x86迁移到dpu中”。而且“ucloud进一步于下半年研发并推出裸金属物理云2.0产品”,其中也包含了bluefield dpu本身的更多特性。
在mellanox被英伟达收购之前,dpu实际上是mellanox针对下一代smartnic的一个设想,将其networking的技术,和arm做结合,分担主系统的更多工作,包括软件定义网络、软件定义存储、专用加速引擎等。2019年bluefield产品很低调地发布了。英伟达后续对bluefield-2,也就是dpu二代产品的定位有了进一步的延展。
所以今年发布的其实是二代dpu。bluefield 2芯片本身包含8个arm cortex-a72核心,以及两个vliw加速引擎;然后再加上mellanox最拿手的针对网络连接的connectx-6 dx nic(网络适配器)。
简单来说,dpu是数据中心的另一个domain-specific加速器,从主cpu分担networking、存储和安全负载。这其实是英伟达在gpu产品于数据中心市场大获成功后的又一步扩张举措。与此同时进一步消除x86 cpu在数据中心的重要性。
用mellanox的话来说,dpu是将计算功能,与数据靠得更近了(data-centric architecture),取代以前还要把数据专门移到计算所在位置的那种模式(compute-centric architecture)。
更具体地说,bluefield-2相对而言是达成了这个目标的;而bluefield-2x则是在板卡上给dpu再加上了ampere架构的gpu(和egx a100好像有点类似)——英伟达称其为ai-powered dpu。此处多加的gpu价值主要是实时的安全分析,包括识别异常流量,加密流量分析,识别恶意行为,以及动态安全组合、自动响应等。
至此,其实英伟达已经有能力将整个系统,包括cpu、nic、加速器、安全都放到一个soc上,再搭配自家gpu,基本上是可以无视x86的存在的。从英伟达公布的dpu产品路线图来看,后续还会有bluefield-3和4的问世。
bluefield-3其实是加强版的bluefield-2。而bluefield-4则计划在单芯片性能上就打败现有dpu gpu的组合。英伟达计划bluefield-4应可提供400 tops的ai算力。如此一来,从gpu在数据中心做ai、数据分析及hpc,到如今dpu接管网络、存储、安全等关键任务,以及将来dpu可能把这些加速的活儿都干了。
dsp应用于网络安全的一个例子:当两名开发者使用omnivers高吞吐流app进行实时的工作时,一台设备是vmware cloud foundation bluefield-2 dpu,另一台则是传统架构,在遭遇ddos攻击时,两种架构的cpu占用率对比。右边这台服务器会因为数据包泛红,致工作被打断;而左侧服务器,dpu自己就能够识别并丢弃这些恶意数据包
与此同时,英伟达也推出了配套的doca软件栈,就类似于gpu世界的cuda那样。英伟达这两年一直在宣称自己是家软件公司。那么当为开发者提供sdk,这片市场的空前增长,就像现如今的gpu那样,是为英伟达真正统领数据中心市场的野心所在。
而且英伟达现有的软件开发能力,还能持续为doca添砖加瓦,包括sdk扩展支持、各种库的增加:眼见cuda如此的兴盛即知dpu将来的潜力了。与此相较,媒体渲染的什么黄氏定律(huang’s law)都不过是为此服务的营销宣传罢了。
arm将在此间扮演什么样的角色?回想文首jay puri在gtc china首日的圆桌论坛上的发言,是否变得明朗许多?在dpu的版图上,mellanox早已是英伟达麾下一员,就剩arm了。想到此处,感觉英特尔在现如今的时代格局下,还真是有点儿“谁都在针对我”的处境。
这或许也能一定程度解释,为何amd要收购赛灵思。另外,jay puri发言中还提到了,arm理应在pc领域也发光发热,这是否是在暗示,英伟达或许还有在消费市场一搏的打算?