AI-translated from English; not yet reviewed by a fluent editor.

# DeepSeek 发布适用于华为 Ascend 950 的 DeepGEMM 内核

> DeepSeek 新推出的 Ascend 950 内核库提供熟悉的 DeepGEMM 接口和源代码。其前置条件和自行报告的基准测试结果，限定了开发者评估它时需要考虑的范围。

By BIG CHANGE Editorial

Published: 2026-09-30T17:47:47.035Z
Updated: 2026-09-30T17:47:47.035Z
Canonical: https://bigchange.ai/blog/deepseek-deepgemm-ascend-950-kernels

![Conceptual charcoal illustration of a generic rackmount computer chassis in an open test rack, seen from behind with two cables routed down the frame.](https://bigchange.ai/api/media/file/deepgemm-ascend-evaluation-rack-hero-v2.png)
AI-generated by OpenAI; BIG CHANGE conceptual editorial illustration.

DeepSeek 已为使用华为 950 系列 NPU 的开发者发布了 [Ascend 版 DeepGEMM 内核库](https://github.com/deepseek-ai/DeepGEMM-Ascend)，供他们在该硬件上使用。仓库 README 将首次发布的日期记为 2026 年 9 月 30 日；Python 包标明版本为 0.1.0。它为团队在该硬件上进行矩阵乘法和相关模型运算提供了开源起点。目前的性能数据来自 DeepSeek 自行测试。

对于评估 Ascend 软件栈的工程师来说，这次发布提供了内核源代码、熟悉的 DeepGEMM 入口点，以及有文档说明的扩展构建方式。完整模型性能和运营成本仍需在目标系统上针对实际工作负载进行测试。

## 此次发布包含什么

DeepGEMM 是一个用于 AI 模型中常见矩阵运算的库。 [Ascend README](https://github.com/deepseek-ai/DeepGEMM-Ascend/blob/main/README.md)列出了 BF16、FP8 和 FP4 GEMM 内核、用于混合专家模型的分组运算、MQA logits、融合式 MegaMoE 运算以及 mHC prenorm 内核。其 [Python 包导出项](https://github.com/deepseek-ai/DeepGEMM-Ascend/blob/8491bbb4b8c02a094a2318965f50c70438a3e73c/deep_gemm/__init__.py)包括密集和分组 GEMM 函数、MQA 函数、缩放因子布局辅助工具，以及 JIT 编译和 AI core 使用控制。该仓库采用 MIT 许可证。

DeepSeek 表示，Ascend 移植版与其 [上游 DeepGEMM](https://github.com/deepseek-ai/DeepGEMM#interfaces)完全兼容 API。相同的 `deep_gemm`软件包名称以及大部分公共接口可能有助于迁移代码，但 README 指出一项重要的数据布局差异：Ascend 会将 K 方向上每对 UE8M0 缩放因子打包为一个 16 位值 `int16`，并按 MN-major 顺序存储打包后的值。该包导出函数，可将缩放因子转换为所需布局。使用量化输入的应用仍须提供合适的数据并验证自身结果；兼容性说法来自维护者，并非 BIG CHANGE 进行的迁移测试。

## 开发者试用所需条件

文档列出的[前置条件](https://github.com/deepseek-ai/DeepGEMM-Ascend#requirements)包括 Ascend NPU，以及 CANN 9.20 配备 `bisheng` 和 `ld.lld` 等工具，`torch_npu`，Python 3.10 或更高版本，以及支持 C++20 `<format>`的编译器和标准库。维护者称，开发和验证是在 Ascend 950 系列上进行的。 `tilelang`被声明为 HC prenorm 内核的软件包依赖；`tree-sitter`和`tree-sitter-cpp`是从源代码构建时生成类型存根所需的工具。README 未指定 `torch_npu`的版本，也未证明其已在其他 Ascend 设备上通过验证。

README 指示开发者连同子模块克隆仓库，通过 `develop.sh`构建 C++ 扩展；也可以从检出的源代码使用 `pip install . --no-build-isolation`进行安装。其[构建配置](https://github.com/deepseek-ai/DeepGEMM-Ascend/blob/8491bbb4b8c02a094a2318965f50c70438a3e73c/setup.py)会导入`torch`和`torch_npu`，通过`ASCEND_HOME_PATH`或`ASCEND_TOOLKIT_HOME`查找 Ascend 工具包，并链接 Ascend 和 Torch NPU 库。因此，评估这些内核需要相应的硬件和工具链。仓库还包含[运算测试](https://github.com/deepseek-ai/DeepGEMM-Ascend/tree/8491bbb4b8c02a094a2318965f50c70438a3e73c/tests)。BIG CHANGE 检查了文档和代码，但没有运行构建或内核。

## 基准测试的范围有多大

DeepSeek 报告称，在配备 CANN 9.20 的 Ascend 950DT 上使用`bench_msprof`，并在 L2 缓存冷态下测量。对于一种密集 BF16 矩阵乘法形状（M=4096、N=7168、K=16384），其[性能表](https://github.com/deepseek-ai/DeepGEMM-Ascend#performance)列出了 2,229.9 微秒、431 TFLOPS，以及该表所示硬件上限的 99.8%。相同形状下，FP8×FP8 的数据为 1,117.6 微秒和 861 TFLOPS。这些是特定数据类型和形状下的内核测量值，并非模型吞吐量。表中还列出了各自配置下的分组 GEMM、MQA、MegaMoE 和 prenorm 结果；MegaMoE 数据是八个 rank、八路 expert parallelism、top-k 路由值为六且有一个共享 expert 时的平均值。

该[测试代码](https://github.com/deepseek-ai/DeepGEMM-Ascend/blob/8491bbb4b8c02a094a2318965f50c70438a3e73c/tests/common.py)将 GEMM 输出与生成的参考值进行比较，并在受支持的密集案例中使用 ACLNN 交叉检查。对于某些形状和配方，它会明确跳过这项补充 ACLNN 比较。公开的代码和测试使这些说法可供检查，但 BIG CHANGE 尚未独立复现 README 中的数据。此次发布没有提供与其他加速器栈的同条件基准比较、成本比较或端到端服务结果。

## 主要变化

DeepSeek 已发布适用于 Ascend 950 系列的 DeepGEMM Ascend 内核代码。

开发者可以检查并构建适用于该硬件的常见 GEMM 和相关模型运算。发布资料说明了 CANN 9.20 以及 Ascend 专用的缩放因子布局。

这为 Ascend 950 团队提供了可针对自有模型形状进行评估的内核代码。DeepSeek 报告称，在一套 Ascend 950DT 测试配置中，结果接近硬件上限；BIG CHANGE 没有运行这些内核。

完整应用的性能、对其他 Ascend 设备的支持以及运营成本仍有待确定。

## 来源与延伸阅读

- [DeepGEMM Ascend 仓库和 README](https://github.com/deepseek-ai/DeepGEMM-Ascend)：9 月 30 日发布说明、前置条件、接口兼容性说法及项目自行编制的基准测试表。README 是项目维护者提供的一手资料，并非独立验证。
- [包导出项](https://github.com/deepseek-ai/DeepGEMM-Ascend/blob/8491bbb4b8c02a094a2318965f50c70438a3e73c/deep_gemm/__init__.py)和[构建配置](https://github.com/deepseek-ai/DeepGEMM-Ascend/blob/8491bbb4b8c02a094a2318965f50c70438a3e73c/setup.py)：初始提交中的版本、公开 Python 函数、依赖声明及源码构建链接方式。
- [GEMM 测试框架](https://github.com/deepseek-ai/DeepGEMM-Ascend/blob/8491bbb4b8c02a094a2318965f50c70438a3e73c/tests/common.py)：仓库检查输出并调用分析器的方式，包括跳过 ACLNN 比较的条件。这些文件并未独立复现已发布的数据。

## Sources

- [DeepSeek AI：DeepGEMM Ascend 仓库和 README](https://github.com/deepseek-ai/DeepGEMM-Ascend) — 有关接口、前置条件、安装及项目自制基准测试的主要来源；已发布数据并非独立测得的结果。
- [首次公开提交](https://github.com/deepseek-ai/DeepGEMM-Ascend/commit/8491bbb4b8c02a094a2318965f50c70438a3e73c) — 首次公开提交的时间为 01:07 UTC，用于确定源代码修订版本并核实发布时间。
- [DeepGEMM Ascend Python 包导出项](https://github.com/deepseek-ai/DeepGEMM-Ascend/blob/8491bbb4b8c02a094a2318965f50c70438a3e73c/deep_gemm/__init__.py) — 版本 0.1.0，以及公开的 GEMM、MQA、MegaMoE 函数、缩放布局和 JIT 控制；导出项不能证明这些功能已在我们的系统上运行。
- [构建配置和 GEMM 测试框架](https://github.com/deepseek-ai/DeepGEMM-Ascend/blob/8491bbb4b8c02a094a2318965f50c70438a3e73c/tests/common.py) — 测试逻辑、正确性参考值及有条件执行的 ACLNN 检查；检查代码并不等于复现基准测试。
