DeepSeek 开源 TileKernels:面向 Blackwell 架构的高性能 LLM 算子库

DeepSeek 于 4 月 23 日在 GitHub 上开源了高性能 GPU 算子库 TileKernels,基于 TileLang 框架开发。该库针对大语言模型的训练与推理场景进行了深度优化,算子性能已接近硬件计算强度与内存带宽的极限。

核心特性

TileKernels 的算子覆盖范围相当广泛:

  • Gating — Top-k 专家选择与评分,用于 Mixture of Experts 路由
  • MoE Routing — Token-to-Expert 映射、融合扩展/归约、权重归一化
  • Quantization — Per-token、per-block、per-channel 的 FP8/FP4/E5M6 量化转换,含融合 SwiGLU+量化算子
  • Transpose — 批量转置操作
  • Engram — Engram 门控算子,含融合 RMSNorm、前向/反向传播和权重梯度归约
  • Manifold HyperConnection — 超连接算子,含 Sinkhorn 归一化和混合拆分/应用
  • Modeling — 高层 torch.autograd.Function 封装,将底层算子组合为可训练层(Engram Gate、mHC Pipeline)

值得注意的是,该库不仅包含基础算子,还包含了 EngramManifold HyperConnection 等 DeepSeek 特有的架构创新实现。这意味着开源社区现在可以直接获取 DeepSeek 在训练栈底层的核心组件,对复现和理解 DeepSeek 模型的工程实现具有重要价值。

硬件与软件要求

项目要求
GPU 架构NVIDIA SM90 (Hopper) 或 SM100 (Blackwell)
CUDA13.1 及以上
Python3.10 及以上
PyTorch2.10 及以上
TileLang0.1.9 及以上

SM100 即 NVIDIA 最新的 Blackwell 架构,TileKernels 是目前少数明确支持该架构的开源算子库之一。CUDA 13.1 和 PyTorch 2.10 的要求也暗示了这是面向下一代训练基础设施的工具链。

项目结构

tile_kernels/
├── moe/        # MoE 路由相关算子
├── quant/      # FP8/FP4/E5M6 量化
├── transpose/  # 批量转置
├── engram/     # Engram 门控算子
├── mhc/        # Manifold HyperConnection 算子
├── modeling/   # 高层 autograd 建模层
├── torch/      # PyTorch 参考实现
└── testing/    # 测试与基准测试工具

评价

TileKernels 的开源体现了 DeepSeek 一贯的策略:在发布模型和论文的同时,逐步开放支撑其训练推理的基础设施。从 DeepSeek-V2 的 MLA/MoE 实现,到 DeepSeek-R1 的推理优化,再到如今的 TileKernels 算子库,DeepSeek 正在系统性地将其工程积累贡献给开源社区。

对于研究者和工程师而言,TileKernels 的价值在于:

  • 学习参考:了解 DeepSeek 如何在底层实现高效的 MoE 路由、量化和注意力机制
  • 生产复用:基于 TileLang 的 Python DSL,算子的开发和迁移成本相对较低
  • Blackwell 适配:为下一代 GPU 架构的算子开发提供了可参考的实现

不过需要注意的是,项目 README 中也坦言:"它们并不代表最佳实践,我们正在积极改进代码质量和文档。" 作为 Initial commit 阶段的项目,TileKernels 更像是一个工程参考而非开箱即用的生产库。

安装

bash
# 开发版本
pip install -e ".[dev]"

# 发布版本
pip install tile-kernels

许可证

MIT License


来源:GitHub - deepseek-ai/TileKernels | TileLang

相关推荐