把握历史性时刻,谷歌决意投资GPU计算

文章正文
发布时间:2023-05-14 10:12

在一年前的谷歌I/O 2022大会上,谷歌向全世界展示了其内部机器学习中心使用的8-pod TPUv4加速器,包含总计32768个第四代原研矩阵数学加速器。另外一套TPUv4 pod则部署在硅谷周边的一处数据中心。接下来的一年当中,相信谷歌持续部署了更多TPUv4 pod。

尽管还不清楚谷歌具体如何利用TPUv4引擎承载搜索引擎和广告服务平台上的推理任务,但从市场动态来看,谷歌确实是全球最大的英伟达GPU买家之一。另外,谷歌还在大量采购AMD Instinct GPU加速器,毕竟随着大语言模型的迅速爆发,大厂们手头掌握的GPU资源无疑越多越好。谷歌自己还是一家云服务商,必须能够提供客户需要和未来想要的东西。目前,希望在英伟达GPU上运行AI训练的客户明显是越来越多。

生成式AI功能全面入驻谷歌软件产品组合,成为本周谷歌I/O 2023大会的核心。这也在情理之中,毕竟业界公认OpenAI/微软这对组合已经在新一轮AI竞赛中取得领先,谷歌3月发布的Bart聊天机器人公测版本仍存在一定差距。如今谷歌最不愿看到的,就是OpenAI和微软最终在AI软件和硬件领域形成双头垄断,如同30年前数据中心/40年前PC兴起之时微软和英特尔形成的双头垄断一样。

颇为讽刺的是,在可能出现的双头垄断当中,OpenAI成了软件供应商,而微软Azure则扮演硬件供应商。据称微软已经使用10000个英伟达A100 GPU训练来自OpenAI的GPT-4大语言模型;更有传闻说微软将砸下25000个GPU训练后继模型GPT-5。这里我们大胆做出推测,这25000个GPU可能是英伟达A100加H100的组合。毕竟一口气买到2.5万个H100 GPU绝非易事,即使是微软和OpenAI也很难垄断如此珍贵的热门资源。

除了微软和OpenAI两位本家之外,客户能从Azure云上获取高端GPU资源就更有限了。从最近与微软Azure HPC与AI总经理Nidhi Chappell的对话中,我们获悉Azure在构建AI超级计算机系统方面并没有太多过激的尝试。微软使用的仍是标准的八路HGX-H100 GPU和来自英伟达的双插槽英特尔“Sapphire Rapids”至强SP主机节点。此外,Azure实例还搭载了400 Gb/秒的Quantum 2 InfiniBand交换机和ConnectX-7网络接口以实现节点互连,使得各实例能够扩展至4000个GPU(对应500个节点)。

谷歌将A3 GPU实例称为“超级计算机”,其中匹配的是与谷歌主干网络相同的“Apollo”光路交换(OCS)网络互连。这套Apollo OCS网络可针对不同拓扑实现重新配置,支持多种数据中心互连任务,将4096个GPU pod中的各TPUv4节点相互连接起来。OCS层则替代叶/脊Clos拓扑中的脊层。

谷歌AI基础设施现场照

A3实例使用同样的HGX-H100系统板和Sapphire Rapids主机系统,由英伟达作为整体单元统一交付。其他超大规模企业和云服务商也会在这套单元上部署“Hopper”GH100 SXM5 GPU加速器。HGX-H100卡上的8个GPU使用非阻塞NVSwitch互连,提供3.6 TB/秒对分带宽,能够将GPU及其内存接入类似NUMA的GPU计算复合体中,由此在内部实现内存共享计算。主机节点运行两块来自英特尔的56核至强SP-8480+ Platinum CPU,运行主频为2 GHz,作为双路服务器的顶部bin通用部分。这台强调性价比的设备配备2 TB DDR5内存,运行频率为4.8 GHz。

谷歌还在主机上使用由自己和英特尔共同设计的“Mount Evans”IPU,拥有200 Gb/秒传输带宽和一套用于P4编程语言、具有16个Neoverse N1核心的自定义数据包处理引擎,负责处理数据传输峰值。谷歌还引入了自己的“服务器间GPU通信栈”和NCCL优化机制,不出意外的话其中至少会有部分负载运行在Mount Evans IPU上。

谷歌AI硬件现场照

谷歌方面表示,A3超级计算机可以扩展至26 exaflops的AI性能,这里预测对应的是FP8或INT8计算精度。如果推测正确,H100 GPU加速器的额定峰值将为3958 teraflops,那么A3超级计算机要支撑起26 exaflops则需要6569个GPU,相当于821个HGX节点。这要比目前微软和甲骨文提供的商用500节点和512节点系统大出约60%。

Google Cloud首席执行官Thomas Kurian在本届I/O大会的开幕主题演讲中表示,A3超级计算机在运行大规模AI训练时,比之前的谷歌设备要快80%,成本则比云端其他替代产品便宜50%。

Kurian提到,“可以看到,在以一半的成本实现两倍的性能时,就会侧生出惊人的新成果。”他稍微停顿了一下,给听众们留出反应和鼓掌的时间。至于可扩展性和定价,还要等待谷歌后续正式公布。但作为参考,我们不妨将A3实例跟2021年3月发布的A2实例做一番比较,后者在单一主机中搭载8或16个GPU。在AI训练中,A100可将精度下调至FP16以提供624 teraflops,这样16路A100的总算力最高可达9984 teraflops,而以FP8精度运行的8路H100则为31664 teraflops。在相同的节点数量下,新的A3超级计算机能够提供3.2倍于A2超级计算机的吞吐量——当然,前提是数据处理任务能够容忍FP8级别的精度。如果不行,那吞吐量增幅就是60%。(目前还不清楚Kurian给出的80%具体代表什么。)

据我们了解,谷歌还没有构建起微软内部面向OpenAI的那种训练设施规模。虽然有传闻说谷歌会以更大规模设施来训练其PaLM 1和PaLM 2大语言模型,所使用的GPU可能超过10000个,但目前还没有任何实质性证据。

谷歌曾于2022年10月推出基于Mount Evans IPU和Sapphire Rapids至强SP的C3系列实例,已经在今年2月开放预览。基于英伟达“Lovelace”L4 GPU加速器的G2实例也自今年3月起开放了预览,其单虚拟机内的L4 GPU加速器已经由1个扩展到了8个。与H100一样,L4也支持F8和INT8计算及更高精度(精度越高,吞吐量相应降低)。

A3和G2实例的定价尚未公布,据说会在正式上市时披露。预计公布时间应该在今年晚些时候,我们会继续密切关注并比较最终定价。

最后需要强调的是,我们仍然认为谷歌所使用的GPU数量要远超其GPU数量。即使从目前的情况看,谷歌的GPU和TPU比例大概也是2:1、3:1甚至4:1。换句话说,谷歌的GPU规模可能是TPU的2到3倍。尽管谷歌内部有大量工作负载被交给TPU处理,但TPU与GPU间的数量比例一直变化缓慢。好在随着AI热潮的到来,这么多GPU一定能在谷歌手中发挥更大的作用。

另外,TPU无法支持英伟达的AI Enterprise软件栈,所以全球众多组织才只能依靠GPU来训练AI模型。如果谷歌想吸引这部分客户使用自家云服务,就必须交付更多GPU资源,把他们拉进来之后再慢慢渗透TPU的优势。亚马逊云科技的自产Tranium和Inferentia芯片也面临着类似的困境。最后,虽然一直有传闻说微软正在内部开发定制芯片,但我们还没有从Azure那边看到任何重型计算引擎。

首页
评论
分享
Top