GitHub - deepseek-ai/FlashMLA

FlashMLA 是适用于 Hopper GPU 的高效 MLA 解码内核,针对可变长度序列服务进行了优化。

当前发布:

  • BF16、FP16
  • 块大小为 64 的分页 kvcache

快速开始

安装

python setup.py install

基准

python tests/test_flash_mla.py

使用 CUDA 12.8,在 H800 SXM5 上实现高达 3000 GB/s 的内存绑定配置和 580 TFLOPS 的计算绑定配置。

用法

from flash_mla import get_mla_metadata, flash_mla_with_kvcache

tile_scheduler_metadata, num_splits = get_mla_metadata(cache_seqlens, s_q * h_q // h_kv, h_kv)

for i in range(num_layers):
    ...
    o_i, lse_i = flash_mla_with_kvcache(
        q_i, kvcache_i, block_table, cache_seqlens, dv,
        tile_scheduler_metadata, num_splits, causal=True,
    )
    ...

要求

  • Hopper GPU
  • CUDA 12.3 及更高版本
    • 但我们强烈建议使用 12.8 或更高版本以获得最佳性能
  • PyTorch 2.0 及更高版本

确认

FlashMLA 的灵感来自 FlashAttention 2&3 和弯刀项目。

引文

@misc{flashmla2025,
      title={FlashMLA: Efficient MLA decoding kernels},
      author={Jiashi Li},
      year={2025},
      publisher = {GitHub},
      howpublished = {\url{https://github.com/deepseek-ai/FlashMLA}},
}
Logo

尧米是由西云算力与CSDN联合运营的AI算力和模型开源社区品牌,为基于DaModel智算平台的AI应用企业和泛AI开发者提供技术交流与成果转化平台。

更多推荐