随着大模型的流行,智算中心建设如火如荼。也因此,经常在公开报道中看到,某某智算中心PUE如何的低,然后非常绿色环保,等等。
本文探讨这样一个话题:智算中心仅关注PUE够吗?我们理解,应该是不够。
PUE = 总能耗/IT设备能耗,这里我们指出PUE指标存在的两个问题:
在PUE指标的指导下,能效优化通常是优化除IT设备之外的制冷、配电等外围设备的能耗(能耗的小头,PUE值小数点后的0.xx),反而没有关注IT设备本身的能耗(能耗的大头,PUE值小数点前的1.00)。制冷等外围设备的能耗占比小,所能优化的也就有限;而IT设备自身的能耗优化,才是能耗优化的关键之所在。但在智算中心的能耗优化方案里,IT设备的能耗优化(需要靠芯片和服务器设计优化)并没有被关注。
并且,如果增大IT设备的能耗(负优化),PUE是下降的。而反过来,如果优化IT设备的能耗(正优化),反而会引起PUE的上升。PUE此刻成为了一个反向的指标。
那么,为了更全面的评价智算中心的能力和价值,除了PUE,我们还应关注哪些指标呢?
1 电力使用效率PUE
1.1 PUE的概念
PUE,Power Usage Effectiveness,电力使用效率,是评价算力中心能源效率的指标,也是算力中心最关键的一个指标。
PUE = 总能耗/IT设备能耗,其中算力中心总能耗包括了IT设备的能耗,以及制冷、配电等系统的能耗。PUE值必然大于1,越接近1表明非IT设备耗能越少,即能效水平越好。
1.2 仅考虑PUE,存在的问题
如果把服务器硬件和网络设备当做一个确定的不再优化的设备(黑盒),那么关注PUE指标基本上足够代表智算中心的能效水平。但如果服务器和网络设备可以持续迭代优化,那么PUE就存在如下一些问题了:
在PUE指标的指导下,能效优化通常是优化除IT设备之外的制冷、配电等外围设备的能耗(能耗的小头,PUE值小数点后的0.xx),反而没有关注IT设备本身的能耗(能耗的大头,PUE值小数点前的1.00)。制冷等外围设备的能耗占比小,所能优化的也就有限;而IT设备自身的能耗优化,才是能耗优化的关键之所在。但在智算中心的能耗优化方案里,这里并没有被关注。
并且,如果增大IT设备的能耗(负优化),PUE是下降的。而反过来,如果优化IT设备的能耗(正优化),反而会引起PUE的上升。PUE此刻成为了一个反向的指标。
2 算效比CE
2.1 CE的概念
CE,Computational Efficiency,算效比。定义为算力中心算力与IT及网络设备功耗的比值,即“计算相关设备的每瓦功耗所产生的算力”(单位:FLOPS/W)。
当然了,如果站在算力中心的角度,算力中心的CE,应表示为算力中心总算力及算力中心总能耗(既包括IT及网络设备的功耗,还包括制冷、配电,以及其他外围设备的功耗)的比值。
2.2 考虑PUE+CE,仍存在的问题
考虑了PUE,也考虑了CE,仍然不够完善,仍然存在如下一些问题。接下来我们详细展开来说。
2.2.1 芯片的算力使用率问题
计算节点的标称算力和实际可使用算力,差距可能很大,也即算力使用率的问题:
第一,业务算法和芯片算子/指令的匹配度。AI对算力的需求强劲,也因此出现了很多专用的AI处理器,如谷歌TPU、AWS的Trainium/Inferentia等,来针对AI算法进行加速。但AI大模型算法更新迭代较快,因此这些芯片对新算法的适配,相对GPU来说,都不够好。也因此,其标称的算力,在实际的使用过程中,是大打折扣的。
第二,芯片微架构、工具链和框架本身的成熟度问题。如果开发的芯片不够好,标称的算力只是直面数据,和实际的业务场景严重脱节,导致非常难以使用。如果给客户提供的工具链和开发框架不够成熟,则无法开发出高效的业务软件,并且工具链软件映射效率低,进而导致硬件的性能无从发挥。
第三,软件运行和处理器处理流程的匹配度。软件的性能优化是一个非常有价值的工作,这也意味着在一个平台上性能非常好的芯片,即使移植到另一个性能近似的芯片上,性能很可能会大幅下降。需要针对新的平台,从软件架构实现、工具链和编译等方面重新优化。
其他问题等。
2.2.2 算力设备的利用率问题
算力设备的利用率问题,主要体现在:
首先,芯片及硬件平台的生态不够壮大,支持的业务场景较少。从而导致能够适配的工作任务较少。
第二,对业务发展太过乐观,建设了规模较大(相对)的算力中心,和实际的业务量不匹配。
第三,市场和业务拓展不利。导致计算任务不够饱满,从而导致大量计算节点闲置。
2.2.3 不同类型算力的价值区别
即使同等的算力,不同类型的处理器,其算力价值千差万别:
同样1TFLOPS的算力,CPU的算力价值肯定高于GPU,而GPU的算力价值又高于专用的AI处理器。
CPU,可以应用在几乎所有客户的所有计算场景,以及可以支撑未来非常长期的演进迭代(如果性能足够的话)。但在大模型时代,相比GPU的算力来说,CPU算力太小,几乎可以忽略。
GPU是通用的并行加速计算平台。一方面,GPU可以用在并行计算业务场景的性能加速;另一方面,其通用可编程特性,使得GPU可以适配非常多的计算场景。
而专用处理器DSA,因为其专用性,能适配的场景有限,并且能适配的业务迭代有限。因此,其算力的价值也就相应的打了折扣。
此外,即使同样属性的算力,不同厂家不同架构的算力价值,也是差别巨大。比如,和其他厂家的同等算力相比,肯定是NVIDIA GPU的算力价值更大。因为NVIDIA GPU具有生态成熟、开发门槛低,以及适配非常多的业务场景等多方面的优势。
3 单位算力成本和单位算力收益
从公司运营的角度看,关心的是投入产出比。但投入产出,是靠公司的产品做媒介,来形成关联的。智算中心的产品即为算力,需要通过算力,来考虑投入的成本以及带来的收益。与此同时,也以算力成本和算力收益作为优化的大方向、大目标。
3.1 GPU算力和AI专用算力的能效和价值区别
GPU算力,相比AI处理器,具有更多的通用可编程能力,可以覆盖相对更多的场景以及算法,也因为能适配更多的业务和算法迭代,因此具有更长的生命周期。缺点在于,GPU计算相对专用算力,仍不够高效,并且目前市场上NVIDIA GPU的价格非常昂贵。
而AI处理器,通常具有更高的算力,以及更优的算效比。单卡价格也比NVIDIA GPU更便宜,如果平均到单位算力价格,则价格优势更加显著。但AI处理器比较专用,对场景的适配性要差一些,其实际的算力利用率较低,同时较难适配目前AI大模型算法的快速迭代,从而导致生命周期较短。
GPU算力和AI专用算力,是大模型时代最核心的两类算力。如何平衡和兼顾?既要GPU算力的灵活可编程性、更多的场景覆盖,以及更长的生命周期,还要专用AI算力的高效和低成本,是智算中心需要考虑的重要问题。
3.2 CPU的算力利用应该加强
从计算架构上来说:
所谓的通算,其实就是基于CPU的同构计算;
所谓的智算,其实就是基于CPU+GPU、CPU+AI处理器的(单)异构计算;
所谓的超算,其实就是CPU+GPU/AI处理器+高性能网络(除了底层高性能网络,可能还存在一些上层一致性协议等)+高性能存储。
所有的计算,其实是围绕着CPU展开的,GPU、AI处理器、高性能网络、高性能存储等是作为外围组件的方式存在,统筹是在CPU。
目前,在智算中心,CPU算力通常处于完全被忽略的状态。虽然跟GPU、AI专用处理器相比,CPU的算力差距巨大。但实际上,CPU算力的使用和价值发挥,是决定智算中心算力价值提升的关键。
智算中心需要给客户提供算力服务,同时不仅仅是智算服务,还应是包含通算、超算、网络、存储、安全以及更上层的平台层服务(PaaS)以及场景和行业解决方案。而这些复杂而精细化的算力服务,需要通过运行于CPU的软件来整合。
也因此,从底层来看,就是需要增强对CPU的算力利用。
4 总结
Q:上面的指标没有提到总量,为什么没有关注总量?
A:主要在于,总量是一个变量。关注了上述这些指标,并且得到优化,做到了行业领先,智算中心势必可以获得更多的收益,从而也有动力和能力去扩大规模。反之,如果这些指标落后,智算中心运营不善,最后只能减少规模。
Q:上面这些指标,就完善了吗?
A:从技术和业务发展的角度,这三个指标一起评价,基本上是完善了。但要站在更高的维度考虑,通常还要考虑两点:
站在经济发展的角度,那就需要考虑单位算力所能带来的最终业务的经济收益。
还有目前地方政府给智算中心优惠政策和资源支持,会更关注智算中心的生态效益。智算中心是新型基础设施,政府关注:通过智算中心的牵引,能为当地带来多少相关企业落地(AI产业化);同时通过AI+,能够推动多少其他相关产业的发展(产业AI化)。
上面两点,已经超出了本文的内容范畴,也超出了作者的能力范围,就不班门弄斧了。
参考文献
1.https://baike.baidu.com/item/PUE/8606974,PUE,百度百科
2.https://info.support.huawei.com/info-finder/encyclopedia/zh/%E7%AE%97%E6%95%88%E6%AF%94.html,什么是算效比?