当电力成为基础设施、成为工业主要动力的时候,人类才真正走入电力时代。而今天互联网和算力的渗透已经超过了过去所有基础设施,但还远远不够,人工智能还只是算力时代的第一个灯泡,更多我们不敢想的事情还远未出现。
无论是AI还是物联网,都逐渐成为生活的一部分,时代变化、技术更迭,背后不变的是雪崩般增长的数据和与之伴生的算力黑洞。
高需求背后的极限警告
AI时代的算力、算法和数据处在一种螺旋式的提升关系中,由于芯片制程和计算性能的提升,使得对算力的渴求不像以前那样迫切,可以说过去十年AI的发展,是靠算法推动的。
随着大数据、5G技术的发展,各式各样的应用场景带来AI的落地,当算法普及和数据累积达到一个新的程度时,原来的算力又不够了,成为AI性能提升的硬指标。
算法和数据的不断演进、交替上升,对更高算力的需求永不停歇。时至今日,算力依然成为制约AI进一步发展的关键因素。
人们从来没有想到过芯片的算力会有到达极限的一天,至少从来没有想到极限会这么快到来。
麻省理工学院的研究人员前年就曾发出算力警告:深度学习正在逼近计算极限。根据MIT的一项研究,深度学习的进展非常依赖算力的增长。
研究人员分析了预印本服务器Arxiv.org上的1058篇论文和其他基准资料,以理解深度学习性能和算力之间的联系,主要分析了图像分类、目标检测、问题回答、命名实体识别和机器翻译等领域如下两方面的计算需求:
每一网络遍历的计算量,或给定深度学习模型中单次遍历(即权值调整)所需的浮点运算数
训练整个模型的硬件负担,用处理器数量乘以计算速度和时间来估算
结论显示,训练模型的进步取决于算力的大幅提高,具体来说,计算能力提高10倍相当于3年的算法改进成果。
如同水利之于农业时代,电力之于工业时代,算力,已成为国民经济发展的重要基础设施。国家发展改革委高技术司解释,算力是数字经济的核心生产力。截至目前,我国数据中心规模已达500万标准机架,算力达到130EFLOPS(每秒一万三千亿亿次浮点运算)。随着数字技术向经济社会各领域全面持续渗透,全社会对算力需求仍十分迫切,预计每年仍将以20%以上的速度快速增长。
物联网推动数据几何级增长,人工智能和大数据技术,特别是企业级对算力的渴求,榨干了芯片企业每一丝算力,而且在算法红利逐渐消失的现在,算力的增长就变成了货真价实的真金白银。
自2012年至今,AI算力需求已增长超30万倍,以GPU为代表的AI加速芯片取代CPU,已经成为AI算力的主要提供者。GPU服务器相对CPU服务器来说是非常昂贵的,大约是美金和人民币汇率的差距(以8卡GPU服务器为例),而且在芯片紧缺的年代,GPU到货周期还比较长。
算力提高的背后,其实现目标所隐含的计算需求——硬件、环境和金钱等成本将变得无法承受。
由于当前粗放的使用及管理方式,大部分用户的GPU利用率只有10%-30%,这就造成了这一宝贵资源的大量浪费,如何更好的利用和管理GPU资源就变得尤其关键。
02、算力分配失衡影响产业发展
算力高成本下的分配不均是影响AI产业发展的关键因素,下面是一些算力分配不均的典型场景:
场景一:
大多数的情况下采取的是为一个开发者分配一块或几块GPU卡的方式来满足开发调试的需求。这种情况下存在什么问题?卡和人绑定,卡分配之后,存在着较大的闲置,开发人员70%以上的时间都在读论文、写代码,只有不到30%的时间在利用GPU资源进行运算调试。
场景二:
通过调查了解,绝大多数企业为了保证业务的隔离性,不受其它AI业务的干扰,保障服务的SLA,都是运行在独立的GPU卡上。在这种情况下,GPU卡的算力和显存使用往往不到20%,这样造成了大量的资源浪费——近80%的算力和显存其实是被白白消耗,而且还有与之相关的电费,运维费用。
场景三:
智能化自动驾驶汽车是人工智能技术落地的最大应用场景之一,智能化汽车很有可能成为未来万物互联的终端,成为继智能手机之后,深刻改变社会形态的产品。
自动驾驶研发的每一个阶段几乎都要涉及到AI深度学习算法的参与,包括机器视觉、深度学习、增强学习、传感器技术等均在自动驾驶领域发挥着重要的作用,自动驾驶发展的瓶颈主要在于这些人工智能底层技术上能否实现突破。
自动驾驶技术与AI流程图
在自动驾驶领域的算力资源,往往分为车载边端算力和数据中心算力:
车载算力目前以指数级方式快速增长,但仍不能满足车上大量多模态AI业务的需求,所以目前关注重点仍然是算力硬件设备的优化
而数据中心端则是相较通用的AI开发、训练和离线推理场景,为了迭代出更准确的算法,需要对每天的路测数据进行处理,让自动驾驶模型反复训练优化,并且进行大量验证测试工作
大多数的AI开发涉及到从数据准备、预处理、模型训练、调参、部署模型、线上推理、持续监控、数据收集、迭代优化的过程。在整个业务流程中,有些工作是需要大量CPU,不需要GPU资源的,在CPU运算的时候,其实GPU是闲置的。
03、AI 计算的下半场:软件定义算力
正如前面阐述的,算力有多重要,就有多昂贵。巨大的算力需求,使得GPU价格一直居高不下。高昂的成本,让更多的用户在AI世界的大门面前望而却步。
历史的经验告诉我们,一个产业的发展一般都有三个阶段:
Make it work
Make it perform
Make it cheap
也就可用、好用、用得起,只有一项技术“飞入寻常百姓家”时,这项技术才能真正为全人类所用。
因此笔者认为:未来10年,算力平民化会成为AI的发展方向,也是必然趋势。
如何实现普惠算力?正如我们前面提到的,通过软件定义,实现算力资源池化是当下有效的办法。
场景一的解决方案:利用软件定义GPU的技术,把卡和人解绑,当有任务调用GPU资源的时候才真正被占用,任务结束,资源释放,回到资源池。
下图是一个JupyterLab的开发场景,VSCode server/PyCharm的模式与这个类似,在实际的案例里,使用软件定义的GPU之后,资源能缩减至25%左右!50个人的开发团队,16张卡搞定。
场景二的解决方案:
通过软件定义的方式,提供细颗粒度的GPU资源复用单卡,保障业务运行的隔离性,可靠性和性能。大部分采取趋动科技池化方案上线生产业务的客户,可获得3倍以上的提升收益。
场景三的解决方案:
打造一站式自动驾驶AI开发、训练、运维的解决方案,提供CPU、物理GPU、OrionX vGPU、存储等多种资源,实现界面化统一申请、调度、监控和运维,同时实现AI开发和训练任务级别的界面化管理,提升车企或自动驾驶企业算法研发效率,兼顾算法工程师和运维工程师等不同人员对AI平台的多样化需求。
举个例子:
如果把GPU比作大巴车,AI的计算任务比作旅游团。计算量最小的任务,就如同三五人的小团体;计算量大的任务自然是上百人的大型旅行团。在传统的算力分配模式中,无论计算量大或者小,都会至少占用一个硬件单元。就像小团体出游,却占用整个大巴车,剩余的座位都是空的。正是这种模式,浪费了大量算力,降低了GPU芯片的利用率。
我们是否可以对传统算力分配模式颠覆。用最直观的比喻来说,做出一款可以“随需应变、动态伸缩”的大巴车。用户不再使用物理AI芯片,取而代之的是随需应变、动态伸缩的虚拟AI芯片。
数据中心也是算力池化非常合适的场景。在数据中心里,最主要是由服务器提供算力,但是因为GPU非常昂贵,一般来说,不会每台服务器都配备GPU。如果能够通过软件定义AI算力可以帮助用户让应用跑在没有GPU的服务器上,通过网络使用其他服务器的GPU算力。未来网络基础设施会变得越来越好,如果网络条件足够好,大胆畅想,甚至可以帮助用户在省、市的范围内来调配算力。
帮助用户根据需求来动态伸缩使用的资源。比如说,某一用户的任务刚启动时只需要一个甚至半个GPU,但是随着运行的不断推进,需要的计算量越来越大,就需要10个GPU,甚至更多。通过软件可以根据具体需求,动态变化所使用的资源。
04、技术演进:GPU从虚拟化到资源池化
学术界和产业界一直在探索如何更优使用GPU资源,这些技术基本可以归纳为GPU池化发展的四个阶段:
阶段1,简单虚拟化。将单物理GPU按固定比例切分成多个虚拟GPU,比如1/2或1/4,每个虚拟GPU的显存相等,算力轮询。最初是伴随着服务器虚拟化的兴起,解决虚拟机可以共享和使用GPU资源的问题
阶段2,任意虚拟化。支持将物理GPU按照算力和显存两个维度灵活切分,实现自定义大小虚拟GPU(通常算力最小颗粒度1%,显存最小颗粒度1MB),满足AI应用差异化需求。切分后的小颗粒度虚拟GPU可以满足虚拟机,容器的使用
阶段3,远程调用。重要技术突破在于支持GPU的跨节点调用,AI应用可以部署到数据中心的任意位置,不管所在的节点上有没有GPU。在该阶段,资源纳管的范围从单个节点扩展到由网络互联起来的整个数据中心,是从GPU虚拟化向GPU资源池化进化的关键一步
阶段4,资源池化。关键点在于按需调用,动态伸缩,用完释放。借助池化能力,AI应用可以根据负载需求调用任意大小的虚拟GPU,甚至可以聚合多个物理节点的GPU;在容器或虚机创建之后,仍然可以调整虚拟GPU的数量和大小;在AI应用停止的时候,立刻释放GPU资源回到整个GPU资源池,以便于资源高效流转,充分利用
GPU池化发展的四个阶段
GPU池化:站在整个数据中心的高度解决问题。OrionX AI算力资源池化软件不同组件的功能及逻辑架构,通过各组件“各司其职”,能为用户实现单机多租户细粒度切分、多机资源聚合、远程算力调用、资源池弹性伸缩等目标;同时由于OrionX支持异构算力的管理和共享,所以能站在整个数据中心的高度解决GPU利用率低、成本高、分配与管理难等问题,建立数据中心级加速资源池。
OrionX基于API Forwarding的基本原理和逻辑架构
注:(本节内容选自趋动科技CEO Talk:GPU池化技术的演进与发展趋势)
05、构建国家算力骨干网
2020年底,国家发展改革委、中央网信办、工业和信息化部、国家能源局四部门联合出台《关于加快构建全国一体化大数据中心协同创新体系的指导意见》提出,到2025年,全国范围内数据中心形成布局合理、绿色集约的基础设施一体化格局。2021年5月,前述四部门正式印发《全国一体化大数据中心协同创新体系算力枢纽实施方案》(《实施方案》),明确提出布局全国算力网络国家枢纽节点,启动实施“东数西算”工程,构建国家算力网络体系。
其实就像是电网和天然气网,算力对于有些地方来说是完全不够用的,而对于有的地方则是空有一手的「算力」却无处使。简单来说,兴建人工智能计算中心之后会面临三点问题:
不同区域AI算力使用存在波峰波谷,各地独立的人工智能计算中心无法实现跨域的动态调配
全国人工智能发展不均衡,不同区域有各自优势,各地独立的人工智能计算中心无法实现跨区域的联合科研和应用创新、资源互补
各地独立的人工智能计算中心产生的AI模型、数据,难以实现全国范围内顺畅流动、交易,以产生更大的价值
算力网络汇聚和共享算力、数据、算法资源,最终实现「一网络,三汇聚」:
网络:将人工智能计算中心的节点通过专线连接起来形成人工智能算力网络
三汇聚:算力汇聚、数据汇聚、生态汇聚
-
算力汇聚:连接不同节点的高速网络,实现跨节点之间的算力合理调度,资源弹性分配,从而提升各个人工智能计算中心的利用率,实现对于整体能耗的节省,后续可支持跨节点分布学习,为大模型的研究提供超级算力
数据汇聚:政府和企业共同推进人工智能领域的公共数据开放,基于人工智能计算中心汇聚高质量的开源开放的人工智能数据集,促进算法开发和行业落地
生态汇聚:采用节点互联标准、应用接口标准,实现网络内大模型能力开放与应用创新成果共享,强化跨区域科研和产业协作
各地算力中心就像大脑中数亿个突触,人工智能算力网络正如神经网络。如此看来,算力网络的重要意义之一便是通过汇聚大数据+大算力,使能了大模型和重大科研创新,孵化新应用。进而实现算力网络化,降低算力成本,提升计算能效。最终打造一张覆盖全国的算力网络,实现算力汇聚、生态汇聚、数据汇聚,进而达到各产业共融共生。