DeepSeek开源DeepGEMM代码库 提供高效FP8通用矩阵乘法支持

2025-02-26 17:19:08   |   探索者   |   1332

2月26日,在开源周的第三天,DeepSeek宣布正式开放其DeepGEMM代码库,进一步推动人工智能与深度学习领域的技术进步。作为一款专为简洁高效的FP8通用矩阵乘法(GEMM)设计的工具,DeepGEMM在V3/R1训练和推理过程中提供了强大的支持,特别适合普通和专家混合(MoE)分组的GEMM运算。

DeepGEMM的设计注重简洁和高效,支持不同矩阵形状的高效计算,能够轻松适应FP8精度需求的训练和推理任务。库采用CUDA编写,安装过程不需要编译,通过在运行时动态使用轻量级即时编译模块来编译所有内核,这使得使用过程非常便捷。尽管DeepGEMM的代码量仅约300行,它在多种矩阵形状下的计算性能表现已经超越了专家调优的库。

在测试中,DeepGEMM展现了极为出色的计算性能。DeepSeek团队在英伟达H800上使用NVCC 12.8对DeepGEMM进行测试,结果显示该库的计算性能最高可达到1358 TFLOPS,内存带宽可达到2668 GB/s。与基于CUTLASS 3.6的优化实现相比,DeepGEMM在计算速度上可提速最高达2.7倍。此外,在分组GEMM(MoE模型)的连续性布局和掩码布局下,DeepGEMM可实现多达1.2倍的性能提升。

目前,DeepGEMM仅支持英伟达Hopper架构运算,针对FP8张量核心的累加不精确问题,DeepGEMM采用了CUDA核心的两级累加(提升)方法,进一步提高了运算精度。该代码库的灵活性和高效性使得它在深度学习和AI推理中具有广泛的应用前景。

要使用DeepGEMM,用户的环境需要满足以下要求:

支持Hopper架构的GPU,sm_90a

Python 3.8及以上

CUDA 12.3及以上(推荐12.8)

PyTorch 2.1及以上

CUTLASS 3.6及以上

特别提醒:本网信息来自于互联网,目的在于传递更多信息,并不代表本网赞同其观点。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字、图片等内容的真实性、完整性、及时性本站不作任何保证或承诺,请自行核实相关内容。本站不承担此类作品侵权行为的直接责任及连带责任。如若本网有任何内容侵犯您的权益,请及时发送相关信息至bireading@163.com,本站将会在48小时内处理完毕。

DeepSeek开源DeepGEMM代码库 提供高效FP8通用矩阵乘法支持

2025-02-26 17:19:08 浏览量: 1332 作者: 探索者

2月26日,在开源周的第三天,DeepSeek宣布正式开放其DeepGEMM代码库,进一步推动人工智能与深度学习领域的技术进步。作为一款专为简洁高效的FP8通用矩阵乘法(GEMM)设计的工具,DeepGEMM在V3/R1训练和推理过程中提供了强大的支持,特别适合普通和专家混合(MoE)分组的GEMM运算。

DeepGEMM的设计注重简洁和高效,支持不同矩阵形状的高效计算,能够轻松适应FP8精度需求的训练和推理任务。库采用CUDA编写,安装过程不需要编译,通过在运行时动态使用轻量级即时编译模块来编译所有内核,这使得使用过程非常便捷。尽管DeepGEMM的代码量仅约300行,它在多种矩阵形状下的计算性能表现已经超越了专家调优的库。

在测试中,DeepGEMM展现了极为出色的计算性能。DeepSeek团队在英伟达H800上使用NVCC 12.8对DeepGEMM进行测试,结果显示该库的计算性能最高可达到1358 TFLOPS,内存带宽可达到2668 GB/s。与基于CUTLASS 3.6的优化实现相比,DeepGEMM在计算速度上可提速最高达2.7倍。此外,在分组GEMM(MoE模型)的连续性布局和掩码布局下,DeepGEMM可实现多达1.2倍的性能提升。

目前,DeepGEMM仅支持英伟达Hopper架构运算,针对FP8张量核心的累加不精确问题,DeepGEMM采用了CUDA核心的两级累加(提升)方法,进一步提高了运算精度。该代码库的灵活性和高效性使得它在深度学习和AI推理中具有广泛的应用前景。

要使用DeepGEMM,用户的环境需要满足以下要求:

支持Hopper架构的GPU,sm_90a

Python 3.8及以上

CUDA 12.3及以上(推荐12.8)

PyTorch 2.1及以上

CUTLASS 3.6及以上

,

Copyright ©2018 铋读网 All Rights Reserved.

京ICP备18051707号

京公网安备 11011302001633号