DeepSeek 开源 Hopper GPU 加速的 MLA 解码内核 FlashMLA,项目一日 Star 数破千

DeepSeek开源FlashMLA,高效的Hopper GPU MLA解码内核,项目一日Star数破千!

原文标题:DeepSeek开源周首日:先让H800 GPU飞起来,项目瞬超1千星!

原文作者:AI前线

冷月清谈:

AI 初创公司 DeepSeek 开源了名为 FlashMLA 的高效 MLA 解码内核,该内核专为 Hopper GPU(如 H800)和可变长度序列服务优化,支持 BF16 数据类型和分页 KV 缓存,性能表现优异。在内存限制配置下速度高达 3000GB/s,在计算能力限制配置下达到 580 TFLOPS。FlashMLA 的设计灵感源于 FlashAttention 2&3 和 cutlass 项目,它采用了类似 cuBLAS 和 cuDNN 的分层分解和数据移动策略。MLA(多头潜在注意力机制)是 DeepSeek 模型低成本训练的关键技术,它通过减少推理时的 KV 缓存来降低内存占用并保持性能。DeepSeek 开源周首日即获得超过 1000 Star,社区对 DeepSeek 开源网页搜索产品的呼声很高。

怜星夜思:

1、FlashMLA 的出现对其他 GPU 架构,比如 AMD 的 GPU,或者未来的 GPU 架构有什么潜在的影响?
2、除了提到的性能提升,FlashMLA 在实际应用中,比如自然语言处理或其他AI领域,会有哪些具体的优势?
3、DeepSeek 开源 FlashMLA 的举动,对 AI 开源社区和整个 AI 生态会产生什么样的影响?

原文内容

左右滑动查看更多图片

刚刚,DeepSeek发布了第一个开源存储库,目前已获超1千 Star。

据介绍,FlashMLA 是适用于 Hopper GPU 的高效 MLA 解码内核,针对可变长度序列服务进行了优化,要求是Hopper GPU、CUDA 12.3 及更高版本及PyTorch 2.0 及更高版本。

项目地址:https://github.com/deepseek-ai/FlashMLA

FlashMLA的主要特性是:
· BF16支持:FlashMLA支持BF16(Bfloat16)数据类型,这使得它在计算和内存使用上更加高效。
· 分页KV缓存:通过分页机制管理键值(KV)缓存,块大小为64,这使得它能够高效处理大规模序列。
· 高性能:在搭载CUDA 12.6的H800 SXM5上,在受内存限制的配置下可实现高达3000 GB/秒的速度,在受计算能力限制的配置下可达到580万亿次浮点运算每秒(TFLOPS)。

FlashMLA 的灵感来自 FlashAttention 2&3 和cutlass项目。cutlass 是一个 CUDA C++ 模板抽象集合,用于在 CUDA 内的所有级别和规模上实现高性能矩阵-矩阵乘法(GEMM)和相关计算。它采用了分层分解和数据移动策略,与用于实现 cuBLAS 和 cuDNN 的策略类似。cutlass 将这些 “移动部件 ”分解为由 C++ 模板类抽象出来的可重用模块化软件组件。概念并行化层次结构中不同层次的原语可以通过自定义平铺尺寸、数据类型和其他算法策略进行专门化和调整。由此产生的灵活性简化了它们在定制内核和应用程序中作为构建模块的使用。

另值得一提的是,MLA(Multi-Head Latent Attention,多头潜在注意力机制 )是DeepSeek 模型低成本训练的一个关键技术,即DeepSeek在DeepSeek-V2模型和DeepSeek-V3模型中用于高效推理的核心注意力机制,通过低秩联合压缩技术, 减少了推理时的键值(KV)缓存,从而在保持性能的同时显著降低了内存占用。

此外,在X上,一条关于“DeepSeek开源周的第一天你期待他们发布什么”的投票引发诸多讨论,其中呼声最高的选项是希望DeepSeek在第一天就可以开源一款网页搜索产品。

针对“DeepSeek 开源 FlashMLA 的举动,对 AI 开源社区和整个 AI 生态会产生什么样的影响?”这个问题,我认为 DeepSeek 开源 FlashMLA 有利于加速 AI 技术的普及和发展。其他开发者可以直接使用或基于 FlashMLA 进行二次开发,从而降低开发成本和门槛。这将促进更多创新应用的出现,最终推动整个 AI 生态的繁荣。同时,开源也能够吸引更多开发者参与到项目的改进中来,形成良性循环。

我感觉 FlashMLA 的开源能促进其他 GPU 优化,就像 CUDA 出现后大家纷纷效仿一样。它专注于 Hopper 的特性,未来 GPU 架构可能需要考虑类似的解码需求。AMD 的 GPU 应该会有压力,也许很快就会推出他们自己的版本。

关于FlashMLA 的优势,我认为可以从两方面来看:1. 处理更长的序列,提升模型对上下文的理解;2. 更快的推理速度,使得实时应用成为可能,例如同声传译或者实时字幕生成,并降低服务成本。

DeepSeek 开源 FlashMLA 的举动,我觉得会促进良性竞争,其他公司或组织可能也会因此开源更多类似的技术,对 AI 开源社区和整个 AI 生态来说都是非常积极的影响。

DeepSeek 开源 FlashMLA 绝对是 AI 开源社区的一大利好!它能降低 AI 开发门槛,让更多人参与进来,也能促进技术交流和创新,就像 Linux 和 Android 一样,带动整个生态发展。

关于这个问题,我提供一个额外的视角:FlashMLA 的开源可能推动更通用的 MLA 算法研究,使其不局限于特定硬件。这将使不同架构的 GPU 都能受益,并加速 MLA 在更广泛领域中的应用。

针对楼主“FlashMLA 的出现对其他 GPU 架构,比如 AMD 的 GPU,或者未来的 GPU 架构有什么潜在的影响?”这个问题,我觉得 FlashMLA 针对 NVIDIA Hopper GPU 的优化可能会促使其他 GPU 厂商,例如 AMD,也开发类似的针对自家架构优化的 MLA 内核。这可能会推动一个良性竞争,最终受益的是所有用户,因为我们将拥有更多高性能的选择。未来 GPU 架构的设计或许也会考虑到 MLA 的需求,进行相应的硬件层面的优化。

FlashMLA 的优势在于它能处理更长的序列,这意味着在自然语言处理中,它可以理解更复杂的上下文,从而提升模型的理解能力。而且,更快的推理速度也能让实时应用成为可能,比如同声传译或实时字幕。

对于“FlashMLA 在实际应用中,比如自然语言处理或其他AI领域,会有哪些具体的优势”这个问题,我认为 FlashMLA 提升的性能可以直接转化为更快的训练和推理速度。这对于大语言模型和需要处理长序列数据的任务尤其重要。在自然语言处理领域,这可能意味着更流畅的对话机器人、更精准的翻译,以及更强大的文本生成能力,这都依赖于处理长序列以及大规模模型。