Pytorch分布式训练/多卡训练(六) —— Expert Parallelism (MoE的特殊策略)

MoE 区别于传统的 Transformer 是其参数分布极为不均

复制代码
传统Transformer (175B GPT-3):
├─ 96层,每层参数量相近
├─ Layer 1: 1.8B参数
├─ Layer 2: 1.8B参数
├─ ...
└─ Layer 96: 1.8B参数
特点:参数分布均匀 ✅

MoE模型 (Switch Transformer-1.6T):
├─ Embedding: 1B参数
├─ Layer 1 (标准Attention): 1B参数
├─ Layer 2 (MoE层): 128B参数!⚠️
│   ├─ 64个Expert,每个2B参数
│   └─ 路由器:0.01B参数
├─ Layer 3 (标准Attention): 1B参数
├─ Layer 4 (MoE层): 128B参数!⚠️
├─ ...
└─ Layer 32 (MoE层): 128B参数
特点:参数分布极不均匀!❌

如果使用 ZeRO-3,当计算的时候all-gather 所有模型参数,如果 expert 数量很多,例如 64 个,那么总显存可能带 256G, 远超一个 GPU所能承载的

Expert Parallelism

核心思想

Expert并行 (EP):

  • 不同GPU负责不同的Expert

  • 只加载被本GPU负责的Expert参数

  • Token根据路由结果发送到对应GPU

    配置:EP=64(64个GPU,每个负责1个Expert)

    参数分配:
    ├─ GPU 0: Expert 0 (2GB)
    ├─ GPU 1: Expert 1 (2GB)
    ├─ GPU 2: Expert 2 (2GB)
    ├─ ...
    └─ GPU 63: Expert 63 (2GB)

    每个GPU显存占用:

    • Expert参数:2GB(只有1个Expert)✅
    • 共享层参数:1GB(Attention等)
    • 激活值:根据收到的token数量
相关推荐
冬奇Lab5 分钟前
RAG 系列(十七):Agentic RAG——让 Agent 主导检索过程
人工智能·llm·源码
CLX05056 分钟前
如何安装Oracle 12c Cloud Control_OMS服务端组件与Agent部署
jvm·数据库·python
结构化知识课堂33 分钟前
AI产品经理入门实战:如何理解计算机视觉?
人工智能·计算机视觉·产品经理·ai产品经理·ai产品设计
我没胡说八道34 分钟前
2026论文工具选购指南:降重、降AI率、排版一站式筛选
人工智能·经验分享·深度学习·考研·aigc·学习方法
初心未改HD37 分钟前
深度学习之MLP与反向传播算法详解
人工智能·深度学习·算法
刀法如飞39 分钟前
【Go 字符串查找的 20 种实现方式,用不同思路解决问题】
人工智能·算法·go
阿正的梦工坊1 小时前
ALiBi:让大语言模型“免训练“外推到更长序列的位置编码方法
人工智能·语言模型·自然语言处理
老纪1 小时前
SQL中如何查找特定的空值行:WHERE IS NULL深度解析
jvm·数据库·python
极客老王说Agent1 小时前
2026供应链革命:实在Agent货物智能入库智能助理使用方法与库位优化全指南
人工智能·ai