当前,我国正在实施“东数西算”工程。在算力发展这个话题下,我谈一些对数据中心“数学”与“算术”的思考。这里的“数学”是指数据的科学,“算术”指的是算力的技术。
要分开:以算为主还是以存为主
从2012年到2019年,科技巨头谷歌的算力需求6年间扩大了30万倍,约每3个半月翻一番。它为什么会有这么高的计算需求?是人工智能(AI)驱动了算力的增长。
以OpenAI于2020 年发布的AI语言分析模型GPT-3为例,它的参数规模有1750亿个,有45TB数据,数学模型大小为700GB。微软专门为OpenAI打造的超级计算机,拥有28.5万个中央处理器(CPU)和1万个图形处理器(GPU),供OpenAI训练所有的AI模型,一次训练成本约为1300万美元。可见,AI的建模对计算能力有很高的要求。
目前,算力可以分为基础算力(基于CPU芯片)、智能算力(基于GPU和NPU芯片)和超算算力(基于高性能计算机)。基于GPU/NPU/FPGA等构建的AI智算中心,更适于训练数据和导出模型。训练出数学模型后,后续利用模型计算输入数据的AI决策结果,这并不需要太高的计算算力。所以,通常是用基于CPU的通用计算做已知数学模型下的计算任务,可以理解为智算中心的功能主要是“算”,数据中心的主要任务是“存”。
中国信息通信研究院数据显示,2021年全球算力分布为美国占31%、中国占27%,其次是日本、德国、英国等其他国家。其中,美国的基础算力占全球35%、智能算力占15%、超算占30%,而中国这三类分别为27%、26%和20%。
可以看出,美国以基础算力为主,中国则是智能算力超过美国。中国的超算和智能算力中心是以政府为主,基础算力以运营商和互联网企业为主;美国则主要是互联网企业为主。
另外,中国三大电信运营商都做了云计算的能力和业务部署,全球其他运营商没有此类布局,这与国外有所不同。
要关注:热数据与冷数据
从数据角度,大部分数据可以分为热数据和冷数据。热数据主要是一些需要实时计算的数据,相比之下冷数据不需要实时性。我国部署的八大算力枢纽,实际上西部主要是定位于处理冷数据和本地一些热数据,而东部主要是处理热数据。
国际数据公司IDC提出,人类历史上90%的数据都是过去几年产生的,其中50%是过去两年产生的。最近产生的数据是热数据,但热数据经过一段时间之后,也会“降温”继而变成冷数据。一项统计认为,冷、温、热三类数据分别占累计数据量的80%、15%和5%,这意味着冷数据是最多的、主要的。
热数据要求实时计算,但冷数据的需求主要是存储。或者说,对冷数据来讲计算并不是常态,存储才是。东西部的算力中心,分别更适合于处理热数据和冷数据。从这个意义上来讲,“东数西算”可以说是“东数西存”——主要是存,当然也有计算。
在计算架构上,主要有两种:存算分离和存内计算。
存算分离架构是在控制单元指令下,从存储器读数据并交到CPU计算,得到的结果再送回存储器。如此往复的I/O通信,对于热数据的计算来说效率不高。
但存算分离有个优点,即存储单元不仅可以服务于单个计算单元,还可以同时服务多个服务器的计算,形成一个池化的存储,这样能够支持多云计算,实现较高利用率和低成本、低能耗。而这恰好适用于冷数据,例如可以用云平台建模,用边缘计算训练与仿真。
不过,热数据需快速计算,因而受限于存算分离I/O通信的瓶颈,且CPU能力受累于存储器访问速度而难以发挥,更需要存内计算。存内技术以随机存取存储器(RAM)替代硬盘,在RAM内完成所有运算。现在还有一些阻变存储器和相变存储器等新型非易失性存储器,已经在实验室中取得了突破,但大规模推广成本还较高。还有介乎于存内计算和存算分离之间的模式,如近存计算。
总体而言,存算分离适用于冷数据处理,存内计算适用于热数据处理。举个例子,自动驾驶的数据要在路边甚至车内同时完成存与算。
西部以处理冷数据为主,但也需要处理当地的热数据。冷热数据是否需要分别采用不同的存算架构?这也是值得研究的问题。
要厘清:PUE与IT能效
现在数据中心都喜欢强调 PUE。PUE是数据中心能耗占IT系统能耗之比,反映了制冷系统的水平,但不能用来衡量IT系统的能效。
衡量碳使用效率的指标是CUE,其能更直观地反映数据中心的节碳水平。PUE与CUE在常规电力方面是等效的,但在使用绿电时,即使数据中心PUE很高,CUE也可以很低。因此,PUE低不代表不耗能,因为IT系统也是有能耗的。
据统计,数据中心IT系统的能耗中,服务器约占50%,存储系统约占35%,网络通信设备约占15%。数据中心需要7×24小时工作,但连续工作并不是连续计算。一般来讲,很多数据中心计算的时间占比不高,但是数据“睡觉”的时候也耗能——此时存储系统能耗成为主体。所以麦卡锡报告称,数据中心大部分电能是用于维持服务器的,服务器大部分时间仅用于存储,只有6%~12%用来计算。所以,降低存储的能耗非常重要。
要降低能耗,首先考虑冷数据存储,有人建议采用磁带代替磁盘。据估计,如果100PB的数据存储全部采用硬盘,10年的存储成本要1641万美元;而如果这些数据100%用磁带来代替,存储成本可下降73%。
目前磁带存储正被越来越多的科技公司所接受和应用。比如,百度智能驾驶已全面开始使用磁带存储,对比之前的存储系统,整体成本下降了85%。
但对于热数据,人们希望越快越好,就用闪存代替磁盘。它不但速度快,能效也好,但目前成本还比较高。
还有一种改进能效的办法是数据预处理。不是所有数据都是有用的,我们需要去掉一些无效值,如空格、有缺失的数据、过期数据等。另外,可以通过数据压缩算法把数据优化,还有合理安排数据存储的位置和调度,以比较精确地找出数据所存的位置,这样也可以减少能耗。
对“东数西算”的思考
“东数西算”使得算力设施的布局超越了数据中心枢纽的范畴,虽然设想东部与西部互为冷热数据的配对,但东西部间应如何配比?
我注意到广东省关于数据中心的规划:设计省内算力占70%,省外算力占30%,这与冷数据占比80%的客观情况有出入。按理说,省外多数是冷数据,冷数据占80%,但省外算力只有30%,这显然不能满足需要。或者,是不是可以理解为,80%的冷数据是指存储容量,而不是算力的比例?所以这是个问题。
另外,在市场经济条件下,东西部的存算比例理应“配对”。但是,谁去管它们之间的存算匹配?如果任由各自独立设计,怎么能做到最佳利用容量?这里也存在问题。因此,在“东数西算”推进过程中,需要进一步加强东西部算力枢纽、数据中心的协同。
同时,同一数据中心枢纽或集群内部也有很多比例需要优化。数据中心枢纽内有多个数据中心,每个数据中心内部又有多个业主:有腾讯建的、阿里建的;有电信建的,也有联通、移动建的。各建各的、各种各样,基本没有协商。那么,怎么协调它们的能源、土地、电力等的供应?怎么建立共享机制以实现枢纽内各数据中心所需的能源与网络资源集约化,从而提升利用率?目前还没有这种机制。为此,需要协调“东数西算”跨域数据中心能力,避免存算资源不匹配。总之,“东数西算”还需要“懂数细算”。
此外,每一个数据中心还需要设定计算力、存力和网络能力的合理比例以及相应的灾备比例。这是与冷热数据、大小文件数据有关联的,不能“一刀切”。
从长远来看,数据中心越大型能效就越好,但也忌一步到位:一般而言,CPU的能力一年半就要换代,若超前建设,实际上是浪费的。咨询公司Gartner认为,到2025年,75%的数据要在边缘处理,只有25%的数据会送到云计算中心或数据枢纽上。如何协同边缘与中心云的算力比例?这也是需要认真研究的命题。所以,关于数据中心的“数学”和“算术”,还有很多需要深入研究的内容,算力对我们来讲还是一个比较新的东西,要善于从实践中学习创新。■
(作者系中国工程院院士,记者赵广立根据其在2022中国算力大会上的发言整理)