- 简介管道并行性已经被广泛研究,但大多数现有的调度缺乏系统性的方法。本文提出了一个框架,将管道调度分解为重复的构建块,并表明构建块的寿命决定了管道调度的峰值激活内存。在观察的指导下,我们发现,据我们所知,几乎所有现有的管道调度都存在内存效率低下的问题。为了解决这个问题,我们引入了一系列内存高效的构建块,可以控制激活内存,将峰值激活内存降低到1F1B的一半,而不损失效率,甚至可以降低到1/3,同时保持与1F1B相同的激活内存几乎不出现管道气泡。我们的评估表明,在纯管道并行设置中,我们的方法在吞吐量方面比1F1B高出7%到55%。在实际场景中,当采用混合并行超参数的网格搜索时,我们提出的方法在大型语言模型中比1F1B基线提高了16%的吞吐量。
-
- 图表
- 解决问题提高管道并行性的内存效率。
- 关键思路使用可控制激活内存的内存高效建筑块,将管道调度分解为重复的建筑块,以实现内存高效性。
- 其它亮点提出了一种内存高效的建筑块,能够将峰值激活内存降低到1F1B的1/2或1/3,而不会牺牲效率。在纯管道并行性设置下,相对于1F1B,吞吐量提高了7%到55%。在实际场景中,使用混合并行性超参数网格搜索,相对于1F1B基线,提高了16%的吞吐量。
- 目前大部分管道并行调度缺乏系统性方法。
NEW
提问交流
提交问题,平台邀请作者,轻松获得权威解答~

提问交流