微信扫码
添加专属顾问
我要投稿
流水线并行是模型并行的一种,核心按照模型的层切分到不同设备进行并行计算。
流水线并行是一种并行计算策略,将模型的各个层分段处理,并将每个段分布在不同的计算设备上,使得前后阶段能够流水式、分批进行工作。流水线行通常应用于大语言模型的并行系统中,以有效解决单个计算设备内存不足的问题。
给出了一个由四个计算设备组成的流水线并行系统,包含了前向计算和后向计算。其中F1、F2、F3、F4 分别代表四个前向路径,位于不同的设备上;而B4、B3、B2、B1 则代表逆序的后向路径,也分别位于四个不同的设备上。
从图中可以看出,计算图中的下游设备(Downstream Device)需要长时间持续处于空闲状态,等待上游设备(Upstream Device)的计算完成,才能开始计算自身的任务。这种情况导致了设备的平均使用率大幅降低,形成了模型并行气泡(Model Parallelism Bubble),也称为流水线气泡(Pipeline Bubble)。
GPipe方法将小批次(Mini-batch)进一步划分成更小的微批次(Micro-batch),利用流水线并行方案,每次处理一个微批次的数据。在当前阶段计算完成得到结果后,将该微批次的结果发送给下游设备,同时开始处理后一个微批次的数据,这样可以在一定程度上减少并行气泡。
前向F1计算被拆解为了F11、F12、F13、F14,在计算设备1 中计算完成F11 后,会在计算设备2 中进行F21 计算,同时在计算设备1 中并行计算F12。相比于最原始的流水线并行方法,GPipe 流水线方法可以有效降低并行气泡。
1F1B 流水线策略,是一个前向通道和一个后向通道。1F1B 流水线策略引入了任务调度机制,使得下游设备能够在等待上游计算的同时执行其他可并行的任务,从而提高设备的利用率。1F1B 给出了非交错式和交错式两种调度模式。
1F1B 非交错式调度模式可分为三个阶段
1F1B 交错式调度模式要求Micro-batch 的数量是流水线阶段的整数倍。每个设备不仅负责连续多个层的计算,还可以处理多个层的子集,这些子集被称为模型块。设备1 可以处理层1、2、9、10,设备2 处理层3、4、11、12,依此类推。在这种模式下,每个设备在流水线中被分配到多个阶段。
53AI,企业落地大模型首选服务商
产品:场景落地咨询+大模型应用平台+行业解决方案
承诺:免费场景POC验证,效果验证后签署服务协议。零风险落地应用大模型,已交付160+中大型企业
2025-05-09
一口气讲清楚:AI Agent发展史
2025-05-09
【聊一聊】LLM、MCP、Agent
2025-05-09
大厂大模型必知的5种agent模式
2025-05-09
OpenAI主席万字访谈:AGI的定义、AI重塑软件工程及未来十年展望
2025-05-09
微软 Copilot 再添猛将!Researcher Agent 如何从数据到PPT一气呵成?
2025-05-09
从思维到机器:全面解析爆火的Manus AI智能体技术原理及应用、机遇与挑战
2025-05-08
AI 应用的上下文窗口管理
2025-05-08
六个常见MCP协议的认知误区你中了几个
2024-08-13
2024-06-13
2024-08-21
2024-09-23
2024-07-31
2024-05-28
2024-08-04
2024-04-26
2024-07-09
2024-09-17
2025-05-09
2025-05-08
2025-05-07
2025-04-30
2025-04-29
2025-04-29
2025-04-29
2025-04-28