讲师中心 微信公众号
AI工具推荐 视频效率加速

DeepSeek开源FlashMLA,从GPU架构进行优化开始......

雨明吖_4403

雨明吖_4403

发布时间:2025-04-23 18:54:01

|

894人浏览过

|

来源于php中文网

原创

deepseek终于推出了他们的首个开源项目,flashmla,这是一个针对nvidia hopper架构gpu优化的高效多头线性注意力(mla)解码内核,专门为处理可变长度序列设计。

DeepSeek开源FlashMLA,从GPU架构进行优化开始......中国版的OpenAI——DeepSeek,在全球引发热议后,发布了他们的首个开源项目。

DeepSeek开源FlashMLA,从GPU架构进行优化开始......FlashMLA是DeepSeek针对NVIDIA Hopper架构GPU优化的高效MLA解码内核,专为处理可变长度序列而设计。

DeepSeek开源FlashMLA,从GPU架构进行优化开始......通过优化KV缓存机制和使用BF16数据格式,FlashMLA提升了内存和计算效率。在H800 SXM5 GPU上,其内存带宽可达3000 GB/s,计算性能可达580 TFLOPS。

FlashMLA项目正是幻方AI应用工程师之前提到的萤火AI平台优化英伟达算力集群的技术,现在已经开源!

FlashMLA的设计灵感来源于FlashAttention 2&3和Cutlass项目,支持分页缓存和低秩压缩等技术,进一步优化了内存管理和计算性能。

它结合了FlashAttention的高效内存管理和并行化策略,以及CUTLASS的底层优化和架构支持,从而在Hopper架构上实现了高效的多头注意力解码。这种结合使得FlashMLA在变长序列场景下表现出色,同时充分利用了现代GPU的硬件特性。

DeepSeek开源FlashMLA,从GPU架构进行优化开始......FlashAttention是具有IO感知功能的快速且节省内存的Exact Attention。

DeepSeek开源FlashMLA,从GPU架构进行优化开始......FlashAttention-3针对Hopper GPU(例如H100)进行了优化,并进行了相关测试。

DeepSeek开源FlashMLA,从GPU架构进行优化开始......FlashAttention-3在H100 80GB SXM5上使用FP16时速度提升。FlashMLA借鉴了FlashAttention的分页缓存机制,优化了缓存的管理和访问效率,特别是在变长序列场景下。

FlashAttention-2和FlashAttention-3的并行化和工作分配策略为FlashMLA提供了优化思路,使其能够在Hopper架构上实现高效的计算。

FlashAttention对BF16和FP16的支持也为FlashMLA提供了参考,使其能够充分利用现代GPU的硬件特性。

CUTLASS是由NVIDIA开发的高性能CUDA模板库,用于实现矩阵乘法(GEMM)和相关计算。

python-parallelization
python-parallelization

将顺序 Python 代码转换为并行/并发实现,用于在需要并行化 Python 代码、提升性能时使用。

下载

提供了高度可定制的模板抽象,支持多种数据类型(如FP64、FP32、FP16、BF16等)和混合精度计算。

DeepSeek开源FlashMLA,从GPU架构进行优化开始......FlashMLA的部分优化灵感来源于CUTLASS的特性:

底层优化:CUTLASS提供了高效的矩阵乘法内核和底层优化策略,FlashMLA借鉴了这些优化思路,以实现高效的多头注意力计算。架构支持:CUTLASS对多种NVIDIA GPU架构的支持为FlashMLA提供了硬件适配的基础,使其能够针对Hopper架构进行优化。

DeepSeek开源FlashMLA,从GPU架构进行优化开始......模板化设计:CUTLASS的模板化设计思想为FlashMLA提供了代码结构和模块化的参考,使其能够灵活地实现不同的优化策略。适用于大语言模型(LLM)的推理任务,在需要高效解码的自然语言处理(NLP)场景中表现出色。开发者可以通过简单的安装命令快速部署,运行基准测试脚本验证性能。

DeepSeek开源FlashMLA,从GPU架构进行优化开始......FlashMLA需要以下硬件和软件环境:

硬件:NVIDIA Hopper架构GPU(例如H800 SXM5)。软件:CUDA 12.3及以上版本;PyTorch 2.0及以上版本。安装FlashMLA:通过以下命令安装FlashMLA:

python setup.py install

运行基准测试脚本:

python tests/test_flash_mla.py

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

看看DeepSeek开源的项目,这才是真正的OpenAI!

DeepSeek正在以实际的行动践行"开源、AI先锋"的使命,这是国运级别的创新,也是本土诞生的幸事。

"若前方无路,我便踏出一条路,若天理不容,我便逆转这乾坤",

从DeepSeek爆火的背后,看到的是哪吒的不屈精神,誓要打破这层技术壁垒,为后来者镗出一条路来。

热门AI工具

更多
火山引擎

火山引擎是一款面向企业的云计算与AI服务平台。

WorkBuddy

一款AI办公效率工具,主要用于腾讯云推出的AI原生桌面智能体工作台,适合需要提升相关任务效率的用户。

咔片AIPPT

一款在线AI演示文稿制作工具,可根据主题和内容需求辅助生成PPT结构与页面,提高演示材料制作效率。

Loomy
Loomy Hot

一款AI工具,主要用于科大讯飞发布的桌面级 AI 助理,比 OpenClaw 更易用、更安全!,适合需要提升相关任务效率的用户。

PixTV
PixTV Hot

PixTV是一款面向AIGC内容创作的AI视频生成工具。

PixPix
PixPix Hot

PixPix是一款面向电商视觉生产的AI商品图生成工具。

豆包大模型

豆包大模型是一款由字节跳动推出的企业级大语言模型服务平台。

DeepSeek

DeepSeek是一款面向对话、写作、编程和推理场景的AI大模型工具。

讯飞绘文

讯飞绘文是一款由科大讯飞推出的一站式 AIGC 内容运营平台。

相关专题

更多
数据类型有哪几种
数据类型有哪几种

数据类型有整型、浮点型、字符型、字符串型、布尔型、数组、结构体和枚举等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2931

2023.10.31

php数据类型
php数据类型

本专题整合了php数据类型相关内容,阅读专题下面的文章了解更多详细内容。

534

2025.10.31

c语言 数据类型
c语言 数据类型

本专题整合了c语言数据类型相关内容,阅读专题下面的文章了解更多详细内容。

502

2026.02.12

pytorch是干嘛的
pytorch是干嘛的

pytorch是一个基于python的深度学习框架,提供以下主要功能:动态图计算,提供灵活性。强大的张量操作,实现高效处理。自动微分,简化梯度计算。预构建的神经网络模块,简化模型构建。各种优化器,用于性能优化。想了解更多pytorch的相关内容,可以阅读本专题下面的文章。

2183

2024.05.29

Python AI机器学习PyTorch教程_Python怎么用PyTorch和TensorFlow做机器学习
Python AI机器学习PyTorch教程_Python怎么用PyTorch和TensorFlow做机器学习

PyTorch 是一种用于构建深度学习模型的功能完备框架,是一种通常用于图像识别和语言处理等应用程序的机器学习。 使用Python 编写,因此对于大多数机器学习开发者而言,学习和使用起来相对简单。 PyTorch 的独特之处在于,它完全支持GPU,并且使用反向模式自动微分技术,因此可以动态修改计算图形。

68

2025.12.22

Python 自然语言处理(NLP)基础与实战
Python 自然语言处理(NLP)基础与实战

本专题系统讲解 Python 在自然语言处理(NLP)领域的基础方法与实战应用,涵盖文本预处理(分词、去停用词)、词性标注、命名实体识别、关键词提取、情感分析,以及常用 NLP 库(NLTK、spaCy)的核心用法。通过真实文本案例,帮助学习者掌握 使用 Python 进行文本分析与语言数据处理的完整流程,适用于内容分析、舆情监测与智能文本应用场景。

707

2026.01.27

OpenJDK JVM参数怎么调优
OpenJDK JVM参数怎么调优

Java应用运行缓慢,如何调整JVM参数?本专题介绍OpenJDK JVM性能调优的基本流程,涵盖性能指标确认、运行数据采集、内存配置和垃圾回收分析,帮助你先定位瓶颈,再通过对照测试验证效果,避免直接套用参数而影响应用稳定性。

20

2026.10.16

OpenJDK怎么配置Java开发环境
OpenJDK怎么配置Java开发环境

怎样用OpenJDK搭建开发环境?本专题介绍版本选择、下载安装、环境变量配置和编译运行验证,帮助你理清JDK的作用及基本配置流程,并通过简单程序检查环境是否可用,为后续项目开发做好准备。

20

2026.10.16

OpenJDK怎么部署Java应用
OpenJDK怎么部署Java应用

Java项目开发完成后,怎样部署到目标环境并正常运行?本专题介绍OpenJDK应用部署流程,涵盖运行环境准备、版本兼容检查、应用打包、启动参数配置和日志查看,帮助你理清部署前后的操作顺序,减少环境差异造成的运行问题。

20

2026.10.16

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
腾讯元宝使用手册
腾讯元宝使用手册

共0课时 | 0人学习

DeepSeek手册
DeepSeek手册

共0课时 | 0人学习

Uvicorn官方安装与入门手册
Uvicorn官方安装与入门手册

共0课时 | 0人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn