TL;DR

Ngày 23/04/2026, DeepSeek thả TileKernels — bộ GPU kernel tối ưu cho LLM, viết bằng TileLang (DSL Python) thay vì CUDA C++. Target trực tiếp kiến trúc tile-level của Hopper (SM90) và Blackwell (SM100), bỏ qua lớp trừu tượng của NVIDIA CUTLASS. Đã được dùng trong pipeline training và inference nội bộ của DeepSeek — không phải prototype. MIT license, pip install tile-kernels.

Có gì mới

TileKernels phủ đúng những đoạn hot-path mà một thư viện GEMM thuần không đụng tới:

  • MoE routing — top-k gating + token-to-expert mapping, fused expand/reduce và weight normalization
  • Quantization — cast FP8 / FP4 / E5M6 theo per-token, per-block, per-channel, fused luôn với SwiGLU
  • Engram — gating fused với RMSNorm và gradient reduction
  • Manifold HyperConnection (mhc) — kernel Sinkhorn normalization cho hyper-connection
  • Transpose — batched transpose tối ưu
  • Modeling — wrapper torch.autograd.Function để drop thẳng vào model PyTorch

Điểm quan trọng: các kernel được compile từ Python qua TileLang xuống tile-level instructions, không đi qua CUTLASS. Nghĩa là DeepSeek có thể thử non-standard tiling strategies mà template C++ khó match.

Vì sao đáng chú ý

Ba lý do:

1. Đóng khoảng cách kernel Python ↔ CUDA C++. Trước giờ muốn chạm tile-level là phải viết CUTLASS/C++, cycle thử-nghiệm dài. TileLang + TileKernels chứng minh rằng Python DSL có thể ra kernel gần hardware limit cho các op thực dụng.

2. Open-source stack đầy đủ cho MoE trillion-param. Cộng với DeepGEMM (FP8 GEMM), FlashMLA (attention), 3FS (filesystem), và giờ TileKernels (routing/quant/activation) — DeepSeek đã open-source gần như toàn bộ infra training của mình.

3. Thách thức closed-stack phương Tây. Khi các kernel quan trọng nhất cho training LLM quy mô lớn đều có bản open-source chất lượng production, lợi thế của stack đóng từ các phòng lab Mỹ bị thu hẹp. Bài học từ DeepSeek-V3: bạn không cần độc quyền hạ tầng để ra model cạnh tranh — bạn chỉ cần kernel đủ tốt cho phần cứng sẵn có.

Và với team engineering nhỏ, ý nghĩa thực dụng là: muốn tune một op mới, không cần rành CUTLASS template metaprogramming. Viết TileLang, compile, đo, sửa. Cycle Python ngắn hơn CUDA C++ rõ rệt, nhất là khi đang chạy nghiên cứu kiến trúc model thay vì ship kernel generic.

Thông số kỹ thuật

PropertyGiá trị
Ngôn ngữ kernelTileLang (Python DSL)
GPU hỗ trợSM90 (Hopper), SM100 (Blackwell)
CUDA Toolkit13.1+
PyTorch2.10+
Python3.10+
TileLang0.1.9+
LicenseMIT
Installpip install tile-kernels
Repo stats (lúc launch)989 stars, 71 forks

So sánh với các kernel library khác

LibraryPhạm viNgôn ngữPhù hợp khi
NVIDIA CUTLASSGEMM generic, rất rộngC++ templatecần GEMM đa dạng, không ngại C++
DeepGEMMFP8 GEMM fine-grained scalingCUDAGEMM FP8 sạch, hẹp và nhanh
FlashMLAMulti-head latent attentionCUDA/TileLangdecode attention cho DeepSeek-arch
TileKernelsMoE routing, quant, SwiGLU, RMSNorm, SinkhornTileLang (Python)tất cả op quanh GEMM, fuse sâu

TileKernels không cạnh tranh trực tiếp với CUTLASS hay DeepGEMM — nó lấp chỗ trống giữa GEMM và phần còn lại của transformer. Đó là chỗ DeepSeek thấy bottleneck nhất khi training MoE quy mô trillion-param.

Về mặt hiệu năng, DeepSeek chưa publish bảng số cụ thể tại thời điểm launch. Claim duy nhất là kernel approach the limit of hardware performance — tức là gần trần băng thông bộ nhớ hoặc trần tính toán của thiết bị, tuỳ op. Với ops như quant cast, bottleneck thường là memory bandwidth; với gating top-k trên batch lớn, bottleneck là occupancy và shared-memory conflicts. Fuse sâu (quant + SwiGLU, gating + RMSNorm) là cách trực tiếp để ép cùng một dữ liệu làm nhiều việc hơn trong một lần load từ HBM.

Ai nên dùng

  • Team training MoE lớn trên H100/H200/B200 — gating + routing kernel là nút cổ chai lớn ngoài GEMM, TileKernels fuse trực tiếp
  • Ai deploy FP8/FP4 inference — SwiGLU + quant cast fused giảm memory bandwidth đáng kể so với tách 2 pass
  • Researcher port kiến trúc DeepSeek-V3 / V3.2 — dùng đúng kernel DeepSeek dùng production
  • Team muốn iterate kernel bằng Python — sửa TileLang rồi recompile nhanh hơn chu trình CUDA C++
  • Contributor TileLang — TileKernels là reference implementation quy mô production, chuẩn để học pattern viết kernel đúng cách bằng DSL mới này

Ai không nên dùng: team vẫn stuck trên A100/Ampere, team chạy inference consumer GPU, team cần support AMD hoặc Google TPU, team có SLA không dám đổi toolchain sang CUDA 13.1 + PyTorch 2.10 ngay.

Giới hạn & pricing

  • Miễn phí, MIT license — commercial use thoải mái
  • Khoá phần cứng: chỉ Hopper + Blackwell. Không hỗ trợ Ampere (A100), không AMD, không consumer GPU
  • Toolchain bleeding-edge: CUDA 13.1+, PyTorch 2.10+ — nhiều stack production chưa tới
  • Tác giả tự nhận kernel chưa phải best practices — chấp nhận API có thể đổi, doc thiếu
  • Chưa có bảng benchmark công khai — performance claim hiện mới là định tính (near hardware limits)
  • Thêm dependency TileLang vào build pipeline

Sắp tới

Dựa trên pattern release trước của DeepSeek (DeepGEMM → FlashMLA → DualPipe → 3FS → TileKernels), kỳ vọng hợp lý trong các tháng tới:

  • Bảng benchmark chính thức vs CUTLASS / Triton
  • Mở rộng sang attention variants và thêm op fused
  • Có thể mở rộng arch support theo roadmap TileLang
  • Tích hợp ngược lại vào các repo model của DeepSeek

Nguồn: github.com/deepseek-ai/TileKernels, Startup Fortune, Fakta, TileLang docs.