Meta 如何将广告推荐模型 GEM 的训练效率翻倍

来自 Meta Engineering · 期号 2026-08-04

摘要

Meta 的广告推荐基础模型 GEM 已训练至 LLM 规模,运行在数千块最新 GPU 上。 推荐模型与纯 LLM 的负载特征截然不同:用户行为序列长度参差不齐,注意力模式不对称,对数值精度极其敏感。LLM 的现成优化方案无法直接套用。 Meta 通过两方面的协同设计解决了问题。计算效率方面,自研了 Jagged Flash Attention 等专用核函数库,并采用 MXFP8 等混合超低精度训练。扩展效率方面,实现了拓扑感知的 5D 并行策略,结合无 SM 通信原语,减少了网络开销。 结果是:过去 12 个月将训练 FLOPs 扩大了 4 倍,同时端到端训练效率翻倍,达到 20–25% 的 MFU。

深读

导读 Meta 的广告推荐基础模型 GEM 已训练至 LLM 规模,运行在数千块最新 GPU 上。推荐模型的负载特征,用户行为序列长度参差不齐、注意力模式不对称、对数值精度极其敏感,使得 LLM 的现成优化方案无法直接套用。本文详细介绍了 Meta 如何通过自研核函数库和混合超低精度训练提升计算效率,以及通过拓扑感知的 5D 并行策略和无 SM 通信原语提升扩展效率,最终在过去 12 个月将训练 FLOPs 扩大 4 倍,端到端训练效率翻倍至 20–25% 的 MFU。 关键信息 - GEM 是 Meta 在 Instagram 和 Facebook 上的广告推荐基础模型,拥有数万亿稀疏嵌入参数和数十亿密集参数。 - 用户行为序列长度从数百到数万 token 不等,若填充至最大长度会浪费高达 50% 的计算量。 - 自研的 Jagged Flash Attention (JFA) 第四版相比第二版实现了 40–140% 的 TFLOPS 提升,贡献了 18.5% 的相对局部 MFU 增益和 12% 的 QPS 增益。 - 优化后的 Generalized Dot-Product Attention (GDPA) 核函数在短 K/V 生产场景下,相比 Flash Attention 4 实现了最高 3.5 倍的前向加速。 - MXFP8 精度的前向核函数在 GEM 代表性形状上实现了超过 1.3 倍加速,反向核函数超过 1.5 倍加速。 - 端到端训练效率从 10–12.5% 的 MFU 翻倍至 20–25%,同时总训练 FLOPs 在 12 个月内扩大了 4 倍。 逐节讲解 GEM 的架构与独特训练挑战 GEM 是 Meta 广告系统的核心推荐基础模型,采用混合架构:数万亿稀疏嵌入参数处理用户和广告特征,数十亿密集参数进行深度交互建模。训练数据包含两类特征:序列特征(如用户活动历史)和非序列特征(如用户位置、广告创意表示),各自应用定制的注意力机制。 这种架构与推荐领域数据特性结合,产生了两个核心挑战。挑战一:高单 GPU 利用率难以实现。 推荐负载与 LLM 负载有本质区别:输入序列长度参差不齐(填充至最大长度会浪费高达 50% 计算);注意力模式不对称(自注意力处理极长序列但窗口短,交叉注意力查询长但键/值短);大量内存受限操作(如小嵌入维度的 MLP);以及广告优化任务(CTR/CVR 预测)对数值精度极其敏感,低精度训练容易导致质量下降。挑战二:跨数千 GPU 的高效扩展。 数万亿稀疏参数和数十亿密集参数导致通信量巨大,而 GEM 的负载威胁着近线性扩展所需的四个条件:计算时间远大于通信时间、通信可隐藏在计算之后、最小化重计算、以及良好的负载均衡。 效率框架:局部 MFU 与扩展比率的分解 Meta 将端到端 MFU 分解为两个因子:局部 MFU(计…

读原文

本站只做摘要与索引,全部内容版权归原作者所有。