news 2026/4/15 13:29:02

多卡并行——通信原语

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
多卡并行——通信原语

多卡并行(主要指数据并行 / 模型并行)中,通信操作本质是在多进程/多设备之间搬运张量。下面按你图里的典型操作逐一说明,并给出直观语义与常见用途。


1. Reduce

语义:多卡各自有一个张量 → 按某个规约算子合成一个结果 → 只保留在指定一张卡
[
y=op(x0,x1,…,xN−1)y = \text{op}(x_0, x_1, \dots, x_{N-1})y=op(x0,x1,,xN1)
]

常见算子:sum / mean / max / min
用途

  • 统计全局 loss(只在 rank0 用)
  • 收集指标但不回传给所有卡

2. Broadcast

语义:一张卡上的张量 → 复制到所有卡

x0→x0,x0,…,x0x_0 \rightarrow x_0, x_0, \dots, x_0x0x0,x0,,x0

用途

  • 初始化模型参数(rank0 加载,其余同步)
  • 同步配置、超参数

3. Gather

语义:每张卡一个张量 → 按 rank 顺序拼接 → 放在指定一张卡

y=[x0∣x1∣…∣xN−1]y = [x_0 | x_1 | \dots | x_{N-1}]y=[x0x1xN1]

特点

  • 输出 shape 会变大
  • 非对称(只有 root 有结果)

用途

  • 验证 / 推理阶段收集所有样本结果
  • 日志、评测(只在 rank0)

4. Scatter

语义:一张卡有一个“大张量” → 切分 → 分发给各卡

[x0,x1,…,xN−1]→xi[x_0, x_1, \dots, x_{N-1}] \rightarrow x_i[x0,x1,,xN1]xi

用途

  • 将数据 batch 切分到不同 GPU
  • pipeline / tensor 并行中的输入分发

5. All-Reduce

语义:Reduce + Broadcast

y=op(x0,…,xN−1),每张卡都拿到 yy = \text{op}(x_0, \dots, x_{N-1}),\quad \text{每张卡都拿到 } yy=op(x0,,xN1),每张卡都拿到y

这是训练中最核心的操作

用途

  • 梯度同步(DDP 标配)

    grad_i → AllReduce(sum) → grad_global

关键点

  • 通信量大,但高度优化(ring / tree)
  • 通常与 backward 重叠(bucket + async)

6. All-Gather

语义:Gather + Broadcast

y=[x0∣x1∣…∣xN−1],每张卡都有 yy = [x_0 | x_1 | \dots | x_{N-1}],\quad \text{每张卡都有 } yy=[x0x1xN1],每张卡都有y

用途

  • 对比学习(CLIP / InfoNCE):需要“全局 batch”
  • MoE / 检索 / 多卡负样本
  • 模型并行中拼接中间特征

常见陷阱

  • 显存暴涨(batch × world_size)
  • 反向梯度是否需要all_gather_with_grad

总结对照表

操作输入输出位置是否对称典型用途
ReduceN → 1单卡指标、统计
Broadcast1 → N所有卡参数同步
GatherN → 1单卡验证收集
Scatter1 → N所有卡数据分发
All-ReduceN → N所有卡梯度同步
All-GatherN → N所有卡全局特征
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/10 16:01:44

视频帧检索响应延迟高?3步完成Dify索引深度优化

第一章:视频帧检索响应延迟高?3步完成Dify索引深度优化在处理大规模视频分析任务时,Dify平台常用于构建智能检索系统。然而,当视频帧数据量激增,原始索引策略往往导致检索响应延迟显著上升。通过针对性的索引优化&…

作者头像 李华
网站建设 2026/4/13 11:36:40

视频帧提取的Dify存储优化(百万级帧处理核心技术曝光)

第一章:视频帧提取的 Dify 存储优化在高并发视频处理场景中,视频帧提取的效率与存储管理直接影响系统整体性能。Dify 作为支持 AI 工作流编排的平台,其存储机制在处理大量临时帧文件时面临 I/O 压力与资源浪费问题。通过优化存储路径、引入缓…

作者头像 李华
网站建设 2026/4/3 6:10:11

Dify项目进展大公开,加密PDF解析痛点全解析

第一章:加密 PDF 解析的 Dify 进度跟踪在构建自动化文档处理系统时,解析加密 PDF 文件是一项常见但具有挑战性的任务。Dify 作为一个低代码 AI 应用开发平台,提供了灵活的工作流机制来集成自定义解析逻辑,从而实现对加密 PDF 的进…

作者头像 李华
网站建设 2026/4/6 13:30:31

嵌入式和软件系统中常见通信协议

1. 引言 本文重点关注嵌入式系统和软件设计中常见的通信协议。这些协议涵盖了多种应用场景,包括: FPGA 内部各个核心(硬件模块)之间的通信电路板上微控制器与其他 IC 之间的通信同一产品中两块电路板之间的通信以及相距较远的两…

作者头像 李华
网站建设 2026/4/10 18:29:03

AutoGPT入门指南:本地安装与使用详解

AutoGPT入门指南:本地安装与使用详解 在AI技术飞速演进的今天,我们正从“被动响应式助手”迈向一个全新的阶段——自主智能体时代。当你只需说一句“帮我写一份学习计划”,AI就能自己上网查资料、整理框架、生成文档并保存结果时&#xff0c…

作者头像 李华
网站建设 2026/4/15 9:40:09

LobeChat如何处理长上下文会话?上下文管理机制剖析

LobeChat的上下文管理机制深度解析 在构建现代AI聊天应用时,一个常被低估却至关重要的挑战浮出水面:如何让大语言模型(LLM)在长时间、多轮次的对话中依然“记得”之前发生了什么。尽管像GPT-4这样的模型拥有强大的语义理解能力&am…

作者头像 李华