文末有福利!
刻下,数字经济已成为国民经济高质料发展的新动能,跟着东谈主工智能在产业数字化程度中从“单点打破”迈向“泛在智能”,一个以数字化、收罗化、智能化为特征的灵巧社会正加速到来。
智能算力看成东谈主工智能的基石,是算力收罗构建多要素和会新式信息基础设施的要害领域,已成为数字经济高质料发展的中枢引擎,智能算力基础设施莳植也迎来了高涨。
智算中心看成集约化莳植的算力基础设施,它以 GPU、AI 芯片等智能算力为中枢,提供软硬件全栈环境,主要承载模子熟练、推理、多媒体渲染等业务,撑持千行百业数智化转型升级。
但是传统智算中心的智算资源运用率较低,资源散布相对碎屑化,不利于举座效用的提高,亟需一个可团聚各样型算力、已毕敏捷化资源束缚的平台,使能资源不错被极致运用,算力池化时期应时而生。
为凝合产业共鸣,进一步股东算力池化时期老练,中国出动发布本白皮书,分析了智能算力发展的趋势及面对的挑战,系统性先容了算力池化的界说与野心、总体架构、要害时期和刻下业界的探索实践,并命令业界紧密衔尾、加速构建算力池化长入的模范体系。
1. 算力池化时期配景
数字经济时期,跟着灵巧城市、灵巧交通、灵巧家庭等智能场景的迟缓落地,东谈主工智能正潜入地改变咱们的出产、生计口头。同期跟着 5G、旯旮推测等撑持时期的持续发展,数智业务转型过程中所产生的数据量正在以愈加难以计量的速率爆发。
据 IDC 公布的《数据时期 2025》显现,从 2016 年到 2025 年全球总额据量将会增长 10 倍,达到 163ZB,其中非结构化数据占 70%以上,推测模式将变得愈加复杂,对智能算力的需求也在赓续提高,智能推测将成为主流的推测形态。
跟着智能推测庸俗和会到出产、生计的各个方面,以 GPU、AI 芯片为主要算力资源的智算中心正迟缓取代通用数据中心成为算力发展的主流形态。在此配景下,列国政府已运转布局 AI 领域全栈本事,并出资诱导智能算力基础设施莳植;我国也已进入智能化时期,“十四五”期间,有关部委积极股东智算中心莳植发展,旨在面向东谈主工智能场景提供巨匠算力做事。
同期,跟着 ChatGPT 等基础通用大模子业务引爆了对 GPU 的市集需求,产业各方纷繁加入对基础大模子的熟练和培育,导致“一芯难求”,GPU 价钱也随之暴涨。以英伟达 A800 为例,据市集数据统计,近半年来的价钱增幅高达 30%以上。如安在有限的资源供应内尽可能提高运用率,充分发达算力效率的同期缩小智算中心 TCO,当今已成为智算中心莳植待贬责的要害命题之一。
1.1 传统智算中心存在资源效率问题
1.1.1 GPU 资源运用率不及 30%
刻下智算中心主要以国度或当地政府总体牵头莳植为主,此外,AI 应用做事企业也在布局自有智算基础设施莳植。但是,据公开数据统计,传统模式下的智算中心 GPU 运用率较低,平均数值低于 30%:
− AWS re:Invent 2018 公布数据:平均 GPU 运用率为 20%
− Facebook 2021 年机器学习负载分析报告:平均 GPU 运用率不及 30%
− 英伟达 GTC2022 公布数据:Google 云平均 GPU 运用率为 25%
传统智算中心的 GPU 资源运用率过低,主要来源于以下多个方面的原因:
(一)资源分拨较为轻佻:资源分拨以整卡分拨为主,辅以一虚多的凭空化分拨口头,颗粒度较粗,无法适配不同 AI 任务对资源的互异化需求,导致部分资源闲置,影响算力资源的运用率;
(二)算力莫得被充分激活:AI 任务模子设想劣势、算力优化程度不及、模子框架与底层芯片适配不充分等原因,均可能导致算力资源的性能无法充分发达,导致独特的资源损耗;
(三)收罗带宽瓶颈制约:智算中心开采和做事器之间的通讯需要破费收罗带宽,收罗瓶颈会影响影响举座性能,算力资源称心度高、运用率低。
传统智算中心的 GPU 资源运用率问题是一个详尽性的问题,需要从资源束缚政策、硬件架构设想、应用软件算法优化等多方面共同优化贬责,其中尤以资源束缚政策方面的优化可控性强、奏效快、参预产出比高,是新式智算中默算力池化的要紧接头标的之一。
1.1.2 资源碎屑化导致分拨率低
资源碎屑指体量较小,低于应用的需求而无法被分拨出去的闲置资源,简单来说,应用所需资源的规格越高、种类越多,导致资源碎屑的概率则越大。近几年来,AI 业务赶紧发展,从熟练到股东,从小模子到大模子,AI 任务的种类越来越多,对算力的需求越来越高,算力资源碎屑化趋势较为显然。
碎屑化的原因包括任务类型互异、任务规模互异、任务优先级互异以及任务篡改本事等多方面身分。
(一)任务类型互异:智算中心提供的算力资源不错用于不同种类的任务,包括机器学习、深度学习、图像处理等。也包括大模子、小模子、散布式推理、蚁合式股东,由于不同类型的任务对硬件配置的条目不同,因此会导致不同类型的任务需要不同的算力资源,难以充分适配;
(二)任务规模互异:任务规模不同,所需求的算力资源不同,况兼不同任务规模对算力资源的分拨也无执行模范,小规模任务可肯求大规模的算力,固然存在资源滥用,但却可加速任务完成,相背,在资源总额规矩下,大规模任务也可字据相对较少的算力资源,固然影响推测效率,但却省俭了投资。以上多方面的身分,导致任务需求规格与硬件配置无法对王人,从而导致算力资源碎屑化;
(三)任务优先级互异:不同的任务可能有不同的优先级,一些高优先级的任务可能会占用大批的推测资源,导致其他任务无法实时得到自满,影响举座资源布局;
(四)任务篡改本事:任务篡改亦然影响推测资源碎屑化的要紧身分。要是任务篡改不当,可能会导致推测资源得不到充分分拨,从而变成资源滥用。
要而论之,字据各样化 AI 任务对算力资源的互异化需求,生动地篡改、分拨资源,是缩小智算中默算力资源碎屑的要害。
1.2 池化时期是提高资源效率的要害
何如对稀缺、高亢的算力资源充分运用,缩小其不行分拨的碎屑概率,不错商酌模仿云推测的念念路,对 GPU、AI 芯片等进行团聚池化,再运用先进的资源束缚时期进行切分、篡改、分拨,使能资源可按任务的执行需求进行有序供给。
(一)物理成池:通过高性能智算中心收罗买通做事器间通路,使得分散在各做事器中的 CPU、GPU、AI 芯片等算力资源不错互联互通、透明分享。这项时期允许跨用户、用例、时间行为分享物理算力资源,还不错为在集群的一个节点中实行的单个 AI 任务即兴调用集群中算力,使 AI 任务赢得进一步加速。
(二)逻辑成池:运用池化软件对 CPU、GPU、AI 芯片等资源在逻辑上团聚,AI 任务在创建时,不再是将衰退的、孤岛式的资源进行裸分拨,而是字据篡改经过,从团聚的池化资源中切分出所需数目进行分拨。一方面,分拨的资源数目可按 AI 任求执行所需实行,当 AI任务所需资源不解确,或因负载变化导致资源数目变动时,可已毕动态供给、回收,已毕多 AI 任务的峰谷互补,缩小资源闲置率;另一方面,切分后的衰退资源不错再度团聚、篡改、分拨,缩小碎屑率。
2. 算力池化界说与野心
2.1 算力池化的界说
智能算力池化指依托云推测时期,整合 GPU/AI 芯片等异构算力资源,构建蚁合束缚的资源池,并按表层智算业务的需求,对池化的资源进行长入篡改、分拨,已毕智算业务人命周期束缚的全套时期。
为贬责智算中心所面对的资源运用率问题,算力池化基于传统云推测时期(如 Kubernetes、OpenStack,智算中心以 Kubernetes 为主)有针对性地增强 GPU/AI 芯片池化本事,接收软件界说的口头,对 GPU/AI 芯片进行分时篡改束缚,已毕按 GPU/AI 芯片的细粒度分拨资源,并接收 GPU/AI 芯片 Runtime API 劫持、应用设施监视器等时期,已毕资源跨节点长途调用、衰退资源整合等,从而达到算力资源充分运用、碎屑最小化效率,可灵验提高资源效率,缩小智算中心举座莳植本钱。
2.2 算力池化的野心
智能算力池化的野心是运用软件界说时期,对通过高速无损收罗互连互通的 CPU、GPU、AI 芯片等算力资源进行池化整合,已毕资源的蚁合篡改、按需分拨,使能资源可被充分运用,缩小碎屑概率,提高总体灵验算力、缩小智算中心购置本钱。
化整为零。校正传统的整卡分拨、一虚多凭空化分拨的轻佻式分拨口头,使能淡雅化分拨本事,字据 AI 任务的资源需求进行按需供给,契合各样化业务的互异需求。
隔空取物。基于高速无损收罗,跨节点调取 GPU、AI 芯片等智能算力资源,使能 CPU 传统算力及 GPU、AI 芯片智能算力高度解耦,进一步缩小碎屑化比例。
化零为整。整合散布在多机上的衰退资源,积存碎屑为可再分拨的资源、积存小规格资源为更大模子业务可使用的资源,使能资源可高效分拨。
变静为动。校正传统的资源静态分拨、腹地绑定的机制,使能资源不错字据负载变化动态分拨、回收,多任务间不错峰谷互补,全局资源不错限度超分,促进资源效率提高。
3. 算力池化架构与要害时期
3.1 算力池化平台时期架构
新式智算中默算力池化平台依托云推测时期膨胀池化本事,字据AI 任务脾性,一般基于 K8S(Kubernetes)定制化已毕。算力池化平台的时期架构参考如下:
图片
图 1 算力池化平台时期架构
算力池化平台逻辑上可分为池化资源束缚、资源做事代理、池化运行时三类模块构成:
(1) 池化资源束缚
− Kubernetes 束缚组件:基于 Kubernetes 原生束缚做事组件定制化增强,如支撑散布式文献存储、支撑 POD 多收罗平面、支撑RoCEv2/Infiniband 收罗等;
− Kubernetes 篡改膨胀:干系 Kubernetes 篡改做事膨胀专用的池化资源类型,对该类资源的请求转递智算资源池化贬抑器进行篡改、分拨,需配合 Kubernetes 开采插件使用;
− 智算资源池化贬抑器:对 GPU、AI 芯片等智算进行长入束缚、篡改、分拨;
(2) 资源做事代理
池化做事代理:字据智算资源池化贬抑器的篡改驱散,将池化运行时对资源的拜谒请求重定向到执行物理位置实行,如波及跨机拜谒智算资源,则需有关做事器上的池化做事代理屡次重定向,跨机重定向的流量需经由高速无损收罗(如参数面收罗);
Kubernetes 做事代理:基于 Kubernetes 原生做事代理组件定制化增强;
Kubernetes 设 备 插件 : 配 合 Kubernetes 调 度 膨胀 ,为Kubernetes 做事代理注册专用的池化资源类型;
容器运行时:基于原生容器运行时(如 Dockerd、Containerd等)定制化增强;
(3) 池化运行时
池化运行时:依托 GPU、AI芯片的原生运行时(如 CUDA Runtime)进行二次封装,接收 API 劫持、应用设施监视等时期,将 AI 应用软件/AI 开发框架对算力资源的拜谒转递至池化做事代理实行。池化运行时位于容器 POD 内,在容器运行时由自动注入。
字据上述时期架构,当 AI 应用编排器通过调用 Kubernetes API创建应用时,可按新增的池化资源类型指定肯求的资源数目(如pool.kubernetes.io/gpu: 1),对该类型资源的肯求会被 Kubernetes篡改膨胀禁止、转递至智算资源池化贬抑器进行篡改,智算资源池化贬抑器按肯求的资源数目、资源池内称心资源散布情况进行篡改后,将篡改驱散反应给 Kubernetes 束缚组件,然后 Kubernetes 束缚组件正常实行 AI 应用的创建经过,由 Kubernetes 做事代理创建最终 POD看成托付物,并通过池化做事代理配合在 POD 中自动注入池化运行时、通过 Kubernetes 开采插件配合在 POD 中插入凭空 GPU。
AI 应用的 POD 在运行的时候,通过池化运行时拜谒凭空 GPU、实行 AI 任务,池化运行时禁止对凭空 GPU 的拜谒请求、转递给池化做事代理实行,池化做事代理通过向智算池化贬抑器查询凭空 GPU 所对应的信得过智算资源位置、规格,按查询驱散分拨智算资源、实行 AI任务,要是信得过的智算资源位于长途推测节点,则由腹地池化做事代理将拜谒请求转递给长途推测节点上的池化做事代理处理,有关通讯经由参数面收罗。
3.2 算力池化时期本事层级
算力池化时期执行是通过软件界说硬件加速的口头,愈加高效生动的团聚、篡改以及开释海量 AI 加速算力,精确保险 AI 模子开发、熟练、部署、测试、发布全链条算力配给,缩小智算中默算力做事提供本钱,提高智算中心举座效用。从对异构算力使用的老练度及生动性角度启程,刻下算力池化时期可辞别为以下三个本事层级:
图片
图 2 算力池化时期本事层级
阶段 1,静态束缚。将单物理 GPU/AI 芯片按固定比例切分红多个凭空 GPU/凭空 AI 芯片,比如 1/2 或 1/4,每个凭空 GPU/AI 芯片的显存至极,算力轮询。起始是伴跟着做事器凭空化的兴起,贬责凭空机不错分享和使用 GPU/AI 芯片资源的问题。关于静态束缚决议,2021年英伟达在部分 Ampere系列 GPU上提供了 MIG 时期,举例不错将 A100切分红最多 7 份。
阶段 2,动态束缚。以单物理 GPU/AI芯片为野心,支撑物理 GPU/AI芯片从算力和显存两个维度生动切分,已毕自界说大小(简单算力最小颗粒度 1%,显存最小颗粒度 1MB),自满 AI 应用互异化需求。
同期,软件界说 GPU/AI 芯片资源可充分顺应刻下应用云原生化趋势,实时反应表层应用对资源需求的变化,已毕 vGPU/AI 芯片资源基于Scale-Up/Scale-Down 的动态伸缩,并通过资源动态挂载动态开释已毕 GPU/AI 芯片资源超分。
阶段 3,池化束缚。池化时期的要紧打破在于支撑 CPU 通用算力及 GPU/AI 芯片等智能算力的孤独成池,两种资源池内积存的资源孤独篡改、分拨,当篡改的资源分属不同节点时,可通过高速无损收罗跨节点调用、拼装成 AI 任务所需总算力。此束缚口头下,AI 应用不错部署到智算中心的即兴位置,不论地方节点上有莫得智算资源、智算资源够不够,所欠缺的部分从长途合手取即可,从汉典毕在收罗范围内充分分享闲置、致使碎屑化的多种类型资源,促进资源的灵验运用。
由于长途调用的资源比较腹地化资源的拜谒速率相对较低,因此,池化束缚时期可引入做事质料束缚时期,按任务优先级,优先分拨腹地资源,次选长途调用,任务资源不实时将 AI 任务进行部队化束缚,恭候开释出满盈资源时再运行。
3.3 算力池化要害时期
3.3.1 软件界说的资源分拨口头
传统的依赖于硬件支撑的凭空化时期下, AI 应用通过拜谒GPU/AI 芯片的运行时所提供的接口,以赢得对智算资源的调用,资源的算力齐全由卡硬件细则,软件上难以介入,从而无法赢得更敏捷的束缚。池化时期下,资源分拨口头发生了根人道的变革,软件介入了资源的算力供给,为开启更敏捷的资源束缚模式,比如动态伸缩、资源超分等奠定了时期基础,为持续优化智算资源运用率创造了无尽可能。池化时期主要通过以下两种已毕了软件界说的资源分拨:
(1) API 劫持时期
API 劫持时期是当今比较广泛的、针对智能算力的池化时期,它通过劫持对 Runtime API(如 CUDA API)调用已毕资源篡改。
如 3.1 章节时期架构的图 1 所示,AI 应用的容器 POD 内运行的池化运行时并非 GPU/AI 芯片原生的运行时,而是基于原生运行时进行了一定定制化的版块,它对表层应用所提供的 API 接口齐全等同于原生运行时,因此对 AI 应用来说是透明的。
当 AI 应用拜谒池化运行时的 API 时,则被池化运行时转递至池化做事代理实行,池化做事代理则具备敏捷化的资源束缚功能,比如按 1%算力、1MB 缓存的精度细粒度分拨资源,已毕跨节点长途调用资源等。
图片
图 3 API 劫持时期图解
API 劫持时期的要害在于池化运行时仿真 GPU/AI 芯片的原生运行时,由于 GPU/AI 芯片种类、型号繁多,其原生运行时又相对活跃、升级频频,仿真使命较为复杂,开发量、惊叹难度较大。
(2) 应用设施监视器时期
这是一种齐全与 GPU/AI 芯片无关的开采凭空化和长途处理方法,允许在莫得显式软件支撑的情况下启用新的硬件体绑缚构。该项时期通过应用设施监视器使命,该监视器与 Hypervisor 束缚凭空机的口头同样,分为前端、后端,前端监视指定应用设施的行为,拦为止后端处理,后端不错按应用设施肯求的数目分拨资源,或将应用设施拆分到多台机器上运行,在保持代码、数据和实行环境一致性的前提下使用这些机器上的智算资源,从汉典毕资源的细粒度束缚、长途调用等资源敏捷化束缚功能。应用设施监视器端庄惊叹应用设施气象(内存、文献、应用设施库的加载),以及凭空化与系统的交互(举例系统调用和程度间通讯),以确保在多个位置实行时的一致性。
图片
图 4 应用设施监视器时期图解
与 API 劫持时期胜利介入到 AI 应用拜谒资源的经过、需要仿真原生运行时的 API 接口的口头不同,应用设施监视器不介入到 AI 应用拜谒资源的经过、而是通过更底层的系统调用隐含而庸俗的支撑更多种类、型号的硬件和新的运行时功能,其已毕口头与特定的运行时API(如 CUDA)无关,具备愈加弘大的通用性和兼容性。应用设施监视器时期是一种新式的池化决议,提倡时期老练后再商酌商用引入。
3.3.2 算力资源高质料束缚时期
基于软件界说的资源分拨口头,算力池化平台不错已毕更敏捷的资源束缚口头,从汉典毕算力的高质料束缚。
(一)资源细粒度分拨
通过凭空化妙技,将物理资源按照算力与显存两个维度进行细粒度抽象,表层应用不再以物理硬件为单元进行资源肯求及使用,而所以物理硬件算力 1%,显存 1MB 为基本单元。
(二)资源名额束缚
通过时间等算力贬抑时期,对不同田户之间、同田户不同程度、不同田户不同程度之间已毕 GPU 算力及显存的防碍与贬抑,减少资源争抢带来的性能扰动,幸免设施坏心霸占算力资源。
(三)资源无感动态伸缩
池化时期可通过资源动态分拨,为容器动态的分拨可用资源,表层应用可字据本身业务逻辑及负载情况,实时向算力篡改平台肯求算力、显存资源,已毕资源动态垂直膨胀。
(四)资源超分及峰谷互补
智算中心对外提供业务时,为幸免业务之间的竞争影响到做事质料,不同类型的业务简单分开部署在不同的资源池。但业务的运行时时存在岑岭期和低谷期,业务独占资源导致异构算力硬件广泛存在称心周期,许多业务称心期远长于岑岭期,导致总体资源运用率很低。
与此同期,为保险做事质料,业界通用作念法是接收资源过量供应的口头来对业务进行撑持,导致预留的资源量与执行的使用量之间存在较大的差距。
要是粗略将业务的波谷时段运用起来,就能减少波谷时间,从时间维度提高效用;同理,将资源预留冗余削弱,就能从空间维度提高效用。因此将不同优先级、不同波动周期的业务进行羼杂部署,为两个维度提高运用率提供了可能性,即运用低优先级任务占用称心资源,同期高优先级任务能实时霸占到资源,从而保证要害业务的做事质料。
算力池化时期不错通过软件界说,将底层物理硬件资源抽象后作念符合的放大,运用算力硬件推测周期称心时间,通过时间复用灵验使用算力,同期,运用单一指针进行内存托管,将显存、系统内存进行长入惊叹,在 CPU 与 GPU 之间形成内存池分享内存资源,由系统来自动地进行内存移动,以已毕 GPU 显存膨胀,如 CUDA unified memory。
(五)智算任务部队化束缚
单个 AI 任务的开展可浅薄划为为数据准备、任求实行、模子评估三个阶段,从资源角度上分析,数据准备阶段主要使用 CPU 资源,熟练运转后才运转使用 GPU 算力资源进行推测加速。相较于 CPU 通用算力资源,智算中心内智能算力资源愈加容易达到瓶颈,为提高举座AI 熟练任务的实行效率,算力池化时期可提供智能算力资源列队的本事,即 AI 任务的下发可字据 CPU、内存等资源的可用情况触发,熟练任务进入实行阶段后,如智能算力资源不及可进行列队恭候,按次实行。同期可字据熟练任务的要紧程度,树立资源使用的优先级。
3.3.3 泛在化碎屑的池化整合时期
泛在化碎屑至散布式在腹地、长途的传统口头下无法再运用的资源。对这些泛在化碎屑进行池化整合,合并为逻辑视图上的一整片算力,有更高概率自满 AI 任务的资源规格需求。
(一)泛在化资源跨机整合时期
论文《Characterizing Deep Learning Training Workloads onAlibaba-PAI》分析了阿里一个熟练集群上的负载特征(见图 5):从任务数目上看,约 59%的任务是单卡小任务;从 GPU 资源破费上看,固然 81%的 GPU 是被散布式熟练任务占用(单机多卡也算散布式),但是这其中有一半的资源是被小于 8 个 GPU 的任务所占用(1 台物理做事器可自满);唯有 0.7%数目的任务是使用跨越 128 个 GPU(需要16 台或更多物理做事器)。
图片
这个分析标明,熟练任务是各样化的,其规模有大有小,从资源角度上看,意味着智算中心各样业务对 CPU 算力与 GPU 算力的配比需求是各样化的,而 GPU 做事器硬件配置时时是单机 4 卡或者单机 8 卡,单机 CPU 算力与 GPU 算力的固定配比,在承载各样化的熟练任务时,例必带来资源碎屑时势的产生,进而激励大批多卡任务因为资源不及在部队中列队恭候实行,容易带来资源举座流转效率低下的问题。
为贬责资源碎屑问题,池化时期不错已毕对衰退资源的整合,包括跨机整合。见第 3.1章,智算资源池化贬抑器已毕了对 CPU及 GPU/AI芯片分池、单独篡改,也即为 POD 篡改的 CPU 与 GPU/AI 芯片资源可能不在归并台做事器上,但对应用是透明的,当 AI 应用拜谒凭空 GPU时,由池化做事代理字据凭空 GPU 所对应的信得过 GPU 资源位置分拨资源,要是有长途调用需求,则由 POD 地方做事器上的池化做事代理转发资源请求至野心做事器上的池化代理做事拜谒。
通过资源团聚,不错将 GPU 集群内的资源碎屑运用收罗快速整合,保险多卡任务快速启动,提高资泉源转效率。
(二)智算业务 SLA 分级及自动做事质料束缚
智算中心看成承载海量智算业务的基础设施,在资源优化方面应在兼顾熟练任务的举座婉曲率、GPU/AI 芯片资源的举座运用率的同期,提高多个熟练任务的举座性能,而非强调单个任务的性能。
深度学习框架是许多熟练任务依赖的一类基础软件,其设想野心之一是提高单个熟练任务的性能,而池化时期的野心是通过充分运用数据中心内总计 GPU/AI 芯片资源,从而达到多任务的举座最优,两者并不矛盾。
框架和池化时期不错彼此配合,在达成多任务举座最优的情况下,尽量让每个任务的运行愈加优化。池化时期可针对不同任务关于性能的条目进行分级,按优先级高到低遴荐使用指定硬件资源、只使用任务地方做事器上 GPU/AI 芯片资源、即兴调用数据中心内可用算力资源等分拨政策,不错确保任务性能条目的前提下,达到举座资源最优分拨。
5. 瞻望与倡议
跟着 GPT、Stable Diffusion 等时期的老练,AIGC 产业高速发展,对智能算力的需求也呈指数级的增长。算力池化时期相较与传统的 GPU/AI 芯片纵贯时期来说,具备更高的算力运用效率、更方便的使用口头及更低的使用本钱,为产业发展提供奠定优质的算力基础。
本站仅提供存储做事,总计内容均由用户发布,如发现存害或侵权内容,请点击举报。