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数量
相关推荐
Java后端的Ai之路1 天前
【Python 教程15】-Python和Web
python
那个村的李富贵1 天前
光影魔术师:CANN加速实时图像风格迁移,让每张照片秒变大师画作
人工智能·aigc·cann
冬奇Lab1 天前
一天一个开源项目(第15篇):MapToPoster - 用代码将城市地图转换为精美的海报设计
python·开源
腾讯云开发者1 天前
“痛点”到“通点”!一份让 AI 真正落地产生真金白银的实战指南
人工智能
CareyWYR1 天前
每周AI论文速递(260202-260206)
人工智能
hopsky1 天前
大模型生成PPT的技术原理
人工智能
禁默1 天前
打通 AI 与信号处理的“任督二脉”:Ascend SIP Boost 加速库深度实战
人工智能·信号处理·cann
心疼你的一切1 天前
昇腾CANN实战落地:从智慧城市到AIGC,解锁五大行业AI应用的算力密码
数据仓库·人工智能·深度学习·aigc·智慧城市·cann
AI绘画哇哒哒1 天前
【干货收藏】深度解析AI Agent框架:设计原理+主流选型+项目实操,一站式学习指南
人工智能·学习·ai·程序员·大模型·产品经理·转行
数据分析能量站1 天前
Clawdbot(现名Moltbot)-现状分析
人工智能