DeepSeek ha publicado una versión Ascend de su biblioteca de kernels DeepGEMM para desarrolladores que trabajan con los NPU de la serie 950 de Huawei. El README del repositorio fecha el lanzamiento inicial el 30 de septiembre de 2026; el paquete de Python se identifica como versión 0.1.0. Ofrece a los equipos un punto de partida de código abierto para la multiplicación de matrices y otras operaciones de modelos en ese hardware. Por ahora, las cifras de rendimiento proceden de las pruebas de DeepSeek.
El lanzamiento interesa a los ingenieros que evalúan una pila de software Ascend porque expone el código fuente de los kernels y puntos de entrada conocidos de DeepGEMM, además de una ruta documentada para compilar la extensión. El rendimiento de modelos completos y el coste operativo aún requieren pruebas con cargas de trabajo en el sistema previsto.
Qué incluye el lanzamiento
DeepGEMM es una biblioteca para las operaciones matriciales que se repiten en los modelos de IA. El README de Ascend enumera kernels GEMM BF16, FP8 y FP4; operaciones agrupadas para modelos de mezcla de expertos; logits MQA; una operación MegaMoE fusionada, y un kernel mHC prenorm. Sus exportaciones del paquete de Python muestran funciones GEMM densas y agrupadas, funciones MQA, utilidades para la disposición de factores de escala y controles de compilación JIT y uso de AI core. El repositorio tiene licencia MIT.
DeepSeek afirma que el port para Ascend es totalmente compatible a nivel de API con su versión original de DeepGEMM. El mismo deep_gemm paquete y buena parte de la interfaz pública pueden facilitar una migración de código, pero el README señala una diferencia importante en la disposición de datos: Ascend empaqueta cada par de factores de escala UE8M0 a lo largo de K en un entero de 16 bits int16 y almacena los valores empaquetados en orden MN-major. El paquete exporta funciones para transformar los factores de escala a esa disposición requerida. Una aplicación que use entradas cuantizadas aún debe proporcionar datos adecuados y validar sus propios resultados; la compatibilidad es una afirmación de los mantenedores, no una prueba de migración de BIG CHANGE.
Qué necesita un desarrollador para probarlo
Los requisitos documentados son un NPU Ascend y CANN 9.20, que incluye bisheng y ld.lld como herramientas, torch_npu, Python 3.10 o posterior y un compilador y biblioteca estándar compatibles con C++20 <format>. Los mantenedores indican que desarrollaron y validaron el software en la serie Ascend 950. tilelang se declara como dependencia del paquete para el kernel HC prenorm; tree-sitter y tree-sitter-cpp se necesitan para generar declaraciones de tipos al compilar desde el código fuente. El README no fija una versión de torch_npu ni demuestra la validación en otros dispositivos Ascend.
El README indica que hay que clonar el repositorio con sus submódulos y compilar la extensión C++ mediante develop.sh, o instalarla desde el código fuente descargado con pip install . --no-build-isolation. Su configuración de compilación importa torch y torch_npu, localiza el kit de herramientas Ascend mediante ASCEND_HOME_PATH o ASCEND_TOOLKIT_HOME y enlaza las bibliotecas Ascend y Torch NPU. Por tanto, evaluar los kernels requiere el hardware y la cadena de herramientas adecuados. El repositorio incluye pruebas de operaciones. BIG CHANGE inspeccionó la documentación y el código, pero no ejecutó la compilación ni los kernels.
Qué alcance tienen las pruebas de rendimiento
DeepSeek comunica mediciones en un Ascend 950DT con CANN 9.20, usando bench_msprof con la caché L2 fría. Para una forma de multiplicación matricial BF16 densa, M=4096, N=7168 y K=16384, su tabla de rendimiento indica 2.229,9 microsegundos, 431 TFLOPS y el 99,8 % del límite de hardware que figura en esa tabla. Para la misma forma, informa de 1.117,6 microsegundos y 861 TFLOPS con FP8×FP8. Son mediciones de kernels con tipos y formas concretos, no de rendimiento de modelos. La tabla también ofrece resultados de GEMM agrupado, MQA, MegaMoE y prenorm con sus propias configuraciones; los valores de MegaMoE promedian ocho ranks con paralelismo de expertos de ocho, enrutamiento top-k de seis y un experto compartido.
El código de prueba compara los resultados de GEMM con referencias generadas y usa una comprobación cruzada ACLNN en los casos densos compatibles. Omite expresamente esa comparación ACLNN adicional para algunas formas y configuraciones. El código y las pruebas publicados permiten inspeccionar las afirmaciones, pero BIG CHANGE no ha reproducido de forma independiente las cifras del README. El lanzamiento no ofrece una comparación equivalente con otra pila de aceleradores, un análisis de costes ni resultados de un servicio de extremo a extremo.
El gran cambio
DeepSeek ha publicado el código de los kernels DeepGEMM Ascend para la serie Ascend 950.
Los desarrolladores pueden inspeccionar y compilar operaciones GEMM conocidas y otras operaciones de modelos para ese hardware. El lanzamiento documenta CANN 9.20 y una disposición de factores de escala específica de Ascend.
Los equipos que usan Ascend 950 ya pueden evaluar el código de los kernels con las formas de sus propios modelos. DeepSeek comunica resultados cercanos al límite en una configuración de prueba Ascend 950DT; BIG CHANGE no ha ejecutado los kernels.
Quedan por determinar el rendimiento de aplicaciones completas, la compatibilidad con otros dispositivos Ascend y el coste operativo.
Fuentes y lecturas adicionales
- Repositorio y README de DeepGEMM Ascend: nota de lanzamiento del 30 de septiembre, requisitos previos, afirmaciones sobre interfaces y tablas de rendimiento elaboradas por el proyecto. El README es una fuente primaria de los mantenedores del proyecto, no una validación independiente.
- Exportaciones del paquete y configuración de compilación: versión, funciones públicas de Python, dependencias declaradas y enlace de compilación desde el código fuente en el commit inicial.
- Banco de pruebas GEMM: cómo comprueba el repositorio los resultados y llama a su perfilador, incluidas las condiciones en que se omite una comparación ACLNN. Estos archivos no reproducen de forma independiente las cifras publicadas.



