【AI】DeepSeek开源cuda算子库TileKernels

TileKernels 是 DeepSeek 于 2026 年 4 月 22 日 在 GitHub 开源的高性能 GPU 算子库。它不是大语言模型,而是支撑大模型训练与推理的底层基础设施------一套针对 LLM 核心操作深度优化的 CUDA Kernel 集合。


一、背景:从模型开源到基础设施开源

DeepSeek 此前以开源模型权重(V3、R1 等)闻名,但 2026 年 4 月以来,其开源策略明显转向系统级基础设施

  • 4 月中旬:开源 Mega MoE、FP4 Indexer
  • 4 月 23 日 :同步发布 TileKernels (算子库)与 DeepEP V2(MoE 通信库)

为什么要做 TileKernels?

现有高性能算子开发面临两难:

  • CUDA/CUTLASS:性能极致,但开发门槛极高(需掌握 PTX 汇编、内存层次结构、Warp 调度),一个 FlashAttention 算子往往需要 500+ 行代码
  • Triton :OpenAI 开源的 Python 式 GPU 编程语言,易用性好,但不支持国产芯片(昇腾、寒武纪等),且调度灵活性受限

DeepSeek 选择基于 TileLang (北大团队开发的国产 GPU DSL)构建 TileKernels,目标是用接近 Python 的开发效率,达到接近手写 CUDA 的性能,同时打通国产算力生态。


二、核心原理:Tile 级优化 + TileLang DSL

1. TileLang 是什么?

TileLang 是一种领域特定语言(DSL) ,核心设计理念是将算法数据流与硬件调度解耦

  • 类 Python 语法:开发者用近似数学公式的方式描述计算意图
  • 显式 Tile 抽象 :以 "Tile"(张量分块)为核心概念,直观控制数据在全局内存 → 共享内存 → 寄存器之间的流动
  • 编译器自动优化:循环展开、内存布局、流水线并行、张量核心(Tensor Core)调用由编译器自动生成
  • 跨平台:支持 NVIDIA GPU、AMD GPU、华为昇腾 NPU

性能对比 :在 H100 上,TileLang 仅用 80 行 Python 代码 实现的 MLA(Multi-Head Latent Attention)内核,性能即可与 DeepSeek 官方用 CUTLASS 手写的 FlashMLA 相当,远超 Triton 和 FlashInfer。

2. TileKernels 的优化原理

TileKernels 基于 TileLang,针对 NVIDIA SM90(Hopper)和 SM100(Blackwell) 架构的 Tile 级内存层次进行深度优化:

  • 绕过 CUTLASS:不依赖 NVIDIA 官方模板库,直接编写针对特定 Tile 形状的内存访问模式
  • 汇编级指令调优:针对 Hopper/Blackwell 的异步拷贝(TMA)、Warp 组集群(WGMMA)等新指令优化
  • 计算与带宽极限 :官方声明大多数算子的计算强度(Arithmetic Intensity)和内存带宽利用率已接近硬件理论上限

三、框架与模块组成

TileKernels 采用模块化设计,目前包含 7 大算子家族:

模块 路径 功能说明 对应 LLM 场景
Gating moe/gating MoE 路由的 Top-k 专家选择与打分 MoE 模型前向路由决策
MoE Routing moe/routing Token-to-Expert 映射、融合扩展/归约、权重归一化 MoE 全对全(All-to-All)通信前后的数据重排
Quantization quant/ FP8/FP4/E5M6 量化转换,支持 per-token/per-block/per-channel,融合 SwiGLU + Quantization 模型压缩、低精度推理、降低显存占用
Transpose transpose/ 批量转置(Batched Transpose) Attention 中的 KV Cache 重排、数据布局转换
Engram engram/ Engram Gating Kernels,融合 RMSNorm、前向/反向传播、权重梯度归约 DeepSeek 下一代架构中的 Engram 门控机制
Manifold HyperConnection mhc/ 超连接 Kernels,包含 Sinkhorn 归一化、Mix 的拆分与应用 新型架构中的动态连接/混合专家变体
Modeling modeling/ 高层 torch.autograd.Function 封装,将底层 kernels 组合为可训练层(engram gate、mHC pipeline) PyTorch 训练框架直接调用

四、用到的核心技术

技术点 说明
TileLang DSL 底层开发语言,类 Python 语法,TVM 编译器后端
TVM 编译器栈 TileLang 基于 Apache TVM,负责自动并行化、内存调度、循环优化
异步内存拷贝 (TMA) Hopper/Blackwell 硬件特性,隐藏内存延迟
WGMMA (Warp Group Matrix Multiply Accumulate) Blackwell 架构的矩阵乘加速指令
融合算子 (Fused Kernels) 将多个操作(如 SwiGLU + Quantization、RMSNorm + Gate)合并为单次 GPU 启动,减少显存搬运
混合精度计算 FP8/FP4/E5M6 低精度格式支持,提升吞吐降低显存
PyTorch Autograd 集成 通过 torch.autograd.Function 封装,无缝接入现有训练流水线

五、特点总结

特点 具体表现
性能极致 官方声明接近硬件计算强度与内存带宽极限,部分已在内部生产环境验证
硬件前沿 原生支持 NVIDIA Blackwell (SM100),同时兼容 Hopper (SM90),要求 CUDA 13.1+
代码极简 基于 TileLang,算子代码量相比 CUDA 减少 80-90%(如 FlashAttention 从 500 行降至 80 行)
国产兼容 TileLang 已适配华为昇腾、寒武纪、摩尔线程等国产芯片,TileKernels 理论上可跨平台迁移
开源协议 MIT License,可自由商用和修改
即插即用 提供 PyTorch 高层封装,无需改动模型架构即可替换原生算子

六、应用场景与战略意义

直接应用场景

  1. MoE 大模型训练与推理:Top-k Gating、Token Routing 是 MoE 架构的性能瓶颈,TileKernels 提供融合优化版本
  2. 低精度推理部署:FP8/FP4 量化算子可直接用于模型压缩和边缘部署
  3. 下一代架构研究:Engram 和 Manifold HyperConnection 模块暗示了 DeepSeek 下一代模型的架构创新方向

行业战略意义

  • 打破 CUDA 垄断 :通过 TileLang 构建不依赖 NVIDIA 工具链的算子生态,形成"DeepSeek 模型 → TileLang 工具 → 国产芯片"的闭环
  • 降低算子开发门槛:让算法研究员无需精通 CUDA 即可实现高性能自定义算子,加速稀疏注意力、新型架构等前沿探索

七、快速开始

bash 复制代码
# 环境要求:Python 3.10+, PyTorch 2.10+, CUDA 13.1+, SM90/SM100 GPU
git clone https://github.com/deepseek-ai/TileKernels.git
cd TileKernels

# 安装 TileLang 依赖
pip install tilelang>=0.1.9

# 本地开发版安装
pip install -e .

# 运行测试( correctness + benchmark )
pytest tests/transpose/test_transpose.py --run-benchmark

# 压力测试
TK_FULL_TEST=1 pytest -n 4 --count 2

一句话总结

TileKernels 是 DeepSeek 用国产 DSL(TileLang)编写的高性能 GPU 算子库,以 80 行 Python 级的开发效率,达到手写 CUDA 级的硬件性能,直接瞄准 MoE 路由、低精度量化等 LLM 核心瓶颈,并首次原生支持 NVIDIA Blackwell 架构。

相关推荐
马***4117 小时前
适配成人英语学习痛点,打造落地性强的学习辅助方式
人工智能·学习
夜焱辰7 小时前
浏览器端 Agent 的文件版本管理:不用 Git,基于 OPFS + SQLite 自己造了一个
前端·人工智能
Ricky05537 小时前
CTRL-WORLD:一种用于机器人操控的可控生成世界模型(中美2025年联合研究)
人工智能·机器人·世界模型
jeffer_liu7 小时前
Spring AI 生产级实战:工具调用
java·人工智能·后端·spring·ai编程
阿乔外贸日记7 小时前
2026尼日利亚五项清关政策更新,拉高能源装备进口综合成本
大数据·人工智能·搜索引擎·智能手机·云计算·能源
民乐团扒谱机8 小时前
【AI笔记】短时纯音时长对音高感知偏移效应研究综述
人工智能·笔记
侃谈科技圈8 小时前
破除数据中台落地困境:2026数据治理平台差异化能力与选型决策指南
大数据·人工智能
大象说8 小时前
Python多进程共享队列无报错僵死 120G Nginx访问日志清洗踩坑全记录
人工智能·自然语言处理
Cosolar8 小时前
AutoGen 精通教程:从零到企业级多 Agent 系统架构师
人工智能·后端·面试
甲维斯9 小时前
Claude Code 省钱小妙招!200K和自动压缩
人工智能