上下文并行
也叫:Context Parallelism · CP · 长上下文并行
上下文并行沿序列长度切分输入和激活,降低单卡长上下文内存压力,注意力阶段仍要跨设备交换键和值。
他们说
沿序列长度维度切分输入与激活
老白翻译
一条长输入分给多张卡,每张卡先处理其中一段。
它到底是什么
上下文并行把同一条长序列分到多张 GPU。逐 Token 的线性运算可以各自完成,自注意力仍需取得其他分片的键和值。
生活里的例子
四张卡处理一份超长文档时,每张卡保存约四分之一的序列激活。注意力计算到跨段关系时,设备还要传递 KV 数据。
常见误解
- 误解:它会删掉远处内容。 精确上下文并行仍计算完整注意力,只改变数据放置与交换方式。
- 误解:它会把模型权重也切成几份。 这个并行维度切的是序列,权重通常在组内复制。
- 误解:短输入也适合开很高的并行度。 通信固定成本可能超过内存和计算收益。
普通人怎么用
按真实输入长度比较不同并行度的峰值显存、首词元延迟和总吞吐,并记录网络拓扑。长输入没有碰到容量限制时,不必急着增加这个维度。