专栏名称: GiantPandaCV
专注于机器学习、深度学习、计算机视觉、图像处理等多个方向技术分享。团队由一群热爱技术且热衷于分享的小伙伴组成。我们坚持原创,每天一到两篇原创技术分享。希望在传播知识、分享知识的同时能够启发你,大家一起共同进步(・ω<)☆
目录
相关文章推荐
今天看啥  ›  专栏  ›  GiantPandaCV

FlashAttention-3 发布!比FlashAttention-2 快 1.5-2.0 倍

GiantPandaCV  · 公众号  · 3D  · 2024-07-12 14:34
    

主要观点总结

本文介绍了FlashAttention-3的优化技术,该技术旨在提高GPU上注意力机制的效率,特别是在Hopper GPU上。通过利用新的硬件特性如WGMMA、TMA和FP8,FlashAttention-3实现了更高的性能和更低的内存使用。文章还解释了为何需要重叠GEMM和softmax操作,并介绍了几种重叠技术。此外,还提到了针对LLMs中异常值的不相关处理技术,以减少量化误差。最后,文章展示了一些FlashAttention-3的结果,并将其与其他实现进行了比较。

关键观点总结

关键观点1: FlashAttention-3的优化技术

FlashAttention-3通过利用Hopper GPU的新硬件特性(WGMMA、TMA和FP8)来提高GPU上注意力机制的效率。这些技术提高了GPU的利用率,加速了大型语言模型(LLMs)的训练和推理。

关键观点2: GEMM和softmax操作的重叠

为了提高效率,需要重叠GEMM和softmax操作。现代加速器上的非矩阵乘法操作(如特殊函数)比矩阵乘法操作慢得多,因此重叠这些操作可以显著提高性能。FlashAttention-3使用了多种重叠技术,包括warp调度器的手动调度。

关键观点3: 不相关处理技术减少量化误差

LLM激活可能存在比其他特征大得多的异常值,这会导致量化误差。FlashAttention-3利用不相关处理技术来减少量化误差,这是一种在量化文献中使用的技术。通过模拟异常值,该技术可以减少量化误差。

关键观点4: FlashAttention-3的结果和比较

文章展示了一些FlashAttention-3的结果,并将其与FlashAttention-2以及Triton和cuDNN的实现进行了比较。FlashAttention-3在FP16和FP8上都实现了显著的性能提升。


文章预览

英文原文( Tri Dao ): https:// tridao.me/blog/2024/flash3/ 中文翻译(手抓饼熊):https://zhuanlan.zhihu.com/p/708409249 总结 FlashAttention-3: 对H系列架构更好的优化(新的指令特性使用); Gemm和Softmax计算重叠; FP8支持; Attention作为无处不在的Transformer架构的核心层,注意力是大型语言模型和长上下文应用的瓶颈。FlashAttention(以及FlashAttention-2)开创了一种通过最小化内存读/写来加速GPU上的注意力的方法,现在大多数库都在用它来加速Transformer的训练和推理。这导致了过去两年中LLM上下文长度的大幅增加,从2-4K(GPT-3,OPT)到128K(GPT-4),甚至1M(Llama 3)。然而,尽管取得成功, FlashAttention尚未充分利用现代硬件的新功能,FlashAttention-2在H100 GPU上仅实现了理论最大FLOP的35%利用率 。在这篇博文中,我们描述了三种加速Hopper GPU上注意力的主要技术: 利用Tensor Core ………………………………

原文地址:访问原文地址
快照地址: 访问文章快照
总结与预览地址:访问总结与预览