BurstAttention:可对非常长的序列进行高效的分布式注意力计算

提高llm中注意力机制效率的努力主要集中在两种方法上:优化单设备计算和存储能力,如FlashAttention,以及利用多设备的分布式系统,如RingAttention。

FlashAttention通过使用静态随机存储器(SRAM)来存储中间状态,而不是依赖于高带宽存储器(HBM)来提高注意力计算速度。

而RingAttention通过将长序列划分为子序列并将其分布在多个设备上进行并行处理来处理长序列。

虽然它们都提高了处理速度和效率,如果将它们组合起来使用是否可以有更大的提高呢?理论上是这样,但是在分布式环境中直接组合这两种方法无法充分利用它们的优势,并且存在兼容性问题。

而最新的研究BurstAttention可以将2者结合,作为RingAttention和FlashAttention之间的桥梁。

BurstAttention是一个创新的框架,它优化了跨设备的计算和通信,增强了内存使用,最小化了通信开销,提高了缓存效率。

BurstAttention在集群中的设备之间分割序列,每个设备通过将序列投影到查询、键和值嵌入中来处理序列的一部分。然后这些片段在设备之间循环,计算本地注意力得分,并将其汇总为全局注意力得分。

在他们的实验中,表明BurstAttention减少了40%的通信开销,并将8×A100 gpu上128K长度序列的训练速度提高了一倍。

这篇论文是3月发布的,但是作者没有提到他们是否会发布他们的实现,所以我们先看看他的论文吧:

https://avoid.overfit.cn/post/5aacdef85b104ff0a9faea9ad84f2a95

相关推荐
橙露3 小时前
数据特征工程:缺失值、异常值、标准化一站式解决方案
人工智能·机器学习
新加坡内哥谈技术3 小时前
OpenAI 的 Codex 团队如何工作并利用 AI
人工智能
星河耀银海4 小时前
人工智能大模型的安全与隐私保护:技术防御与合规实践
人工智能·安全·ai·隐私
love530love4 小时前
Scoop 完整迁移指南:从 C 盘到 D 盘的无缝切换
java·服务器·前端·人工智能·windows·scoop
njsgcs4 小时前
agentscope提取msg+llama_index 查询
人工智能
小和尚同志4 小时前
什么?oh-my-opencode 太重了?那试试 oh-my-opencode-slim
人工智能·aigc
一路往蓝-Anbo5 小时前
第 9 章:Linux 设备树 (DTS) ——屏蔽与独占外设
linux·运维·服务器·人工智能·stm32·嵌入式硬件
飞哥数智坊5 小时前
把模型焊死在芯片上,就能跑出 17,000 tokens/秒?这是一条死路,还是一条新路?
人工智能
多恩Stone5 小时前
【3D-AICG 系列-11】Trellis 2 的 Shape VAE 训练流程梳理
人工智能·pytorch·算法·3d·aigc
tuotali20265 小时前
氢气压缩机技术规范亲测案例分享
人工智能·python