为了追求更快、更高效的人工智能系统开发,英特尔、Arm 和英伟达今天发布了一份他们称之为人工智能通用交换格式的规范草案。他们说,虽然是自愿的,但提议的“8 位浮点 (FP8)”标准有可能通过优化硬件内存使用和为 AI 训练(即工程 AI 系统)和推理(运行系统)。
在开发人工智能系统时,数据科学家面临着关键的工程选择,而不仅仅是收集数据来训练系统。一种是选择一种格式来表示系统的权重——权重是从训练数据中学习到的影响系统预测的因素。例如,权重使GPT-3 之类的系统能够从长句子的提示中生成整个段落,或者DALL-E 2能够从标题中创建逼真的肖像。
常见格式包括使用 16 位表示系统权重的半精度浮点或 FP16 和使用 32 位的单精度 (FP32)。半精度和更低精度可减少训练和运行 AI 系统所需的内存量,同时加快计算速度,甚至减少带宽和功耗。但是他们牺牲了一些准确性来获得这些收益;毕竟,16 位比 32 位少。
然而,包括英特尔、Arm 和 Nvidia 在内的许多业内人士都将 FP8(8 位)作为最佳选择。在一篇博客文章中,Nvidia 产品营销总监 Shar Narasimhan 指出,上述提议的格式(即 FP8)在包括计算机视觉和图像生成系统在内的用例中显示出与 16 位精度“相当的准确性”,同时提供了“显着”的加速.
英伟达、Arm 和英特尔表示,他们正在以开放格式使他们的 FP8 格式免许可。一份白皮书更详细地描述了它; Narasimhan 表示,这些规范将提交给 IEEE,这是一个维护多个技术领域标准的专业组织,供以后考虑。
“我们相信,拥有一种通用的交换格式将使硬件和软件平台的快速进步和互操作性能够促进计算,”Narasimhan。
三人组并没有必要出于他们内心的善良而追求平等。 Nvidia 的 GH100 Hopper 架构原生实现了 FP8,英特尔的 Gaudi2 AI 训练芯片组也是如此。
但通用的 FP8 格式也将使 SambaNova、AMD、Groq、IBM、Graphcore 和 Cerebras 等竞争对手受益——所有这些竞争对手都已尝试或采用某种形式的 FP8 进行系统开发。在今年 7 月的一篇博客文章中,Graphcore 联合创始人兼首席技术官 Simon Knowles 写道,“8 位浮点的出现为 AI 计算提供了巨大的性能和效率优势”,并声称这也是行业安定下来的“机会”采用“单一的、开放的标准”,而不是引入多种竞争格式。
英特尔、Arm 和 Nvidia 提出了新标准,以提高 AI 处理效率,作者Kyle Wiggers最初发表在TechCrunch上