Knowledge map
技术主题
从推理引擎到 GPU Kernel,从算法原理到生产实践。
LLM推理
37 篇模型推理引擎、执行路径与线上性能。
多模态 Serving:图片进入 LLM 之前发生了什么
→
Program-Aware Serving:Agent 等待工具时,GPU 状态该放在哪里
→
DFlash:Block Diffusion 怎样一次生成一整段 Draft
→
结构化生成:Grammar 怎样约束每一个 Token
→
长请求治理:Chunked Prefill 之后,KV Cache 怎样避免被长输出占满
→
Multi-LoRA Serving:一份 Base Model 怎样服务不同 Adapter
→
RLHF/GRPO 系统数据流:一次训练迭代里四类模型怎样协作
→
W4A8:4-bit Weight 怎样喂给 8-bit Tensor Core
→
AWQ:为什么 4-bit 权重量化要先观察 Activation
→
SmoothQuant:把 Activation Outlier 迁移到 Weight
→
FP8 推理:E4M3、E5M2、Scale 与 Tensor Core 到底怎样配合
→
torch.compile:LLM Serving 从 Python Forward 到融合 GPU Kernel
→
CUDA Graph:把动态 LLM Serving 装进可重放的静态执行图
→
MoE 负载均衡:从 Router 偏置到 Expert 副本与 EPLB
→
分布式 LLM 推理故障恢复:一条流式请求怎样活下来
→
LLM 推理容量规划:从请求 Trace 推到 GPU 数量
→
DSpark:用置信度决定推测解码该验证多远
→
Mooncake:让 KV Cache 跨 Prefill 与 Decode 流动
→
DistServe:为什么 Prefill 与 Decode 要分开配置
→
KV Cache:自回归推理为什么必须保存历史状态
→
MLA:为什么一份 Latent 可以代替多头 KV Cache
→
EAGLE:为什么推测解码要预测 Feature
→
Chunked Prefill:长 Prompt 为什么要切片执行
→
Continuous Batching:为什么 Batch 可以动态变化
→
NVFP4 KV Cache:Blackwell 上的 4-bit 缓存量化
→
FlashInfer Sorting-Free Sampling:无需显式排序的 GPU 采样
→
vLLM V1 EngineCore:引擎进程与执行核心的解耦
→
DeepSeek V3.2 稀疏注意力:Lightning Indexer 与 Top-k 选择
→
FairBatching:面向 LLM 推理的公平批次形成
→
异步连续批处理:CPU/GPU 重叠与正确同步
→
推理模型的推测解码:Thinking Budget 与 EAGLE-3
→
MoE 推理优化:路由、专家并行与通信
→
FlashInfer:面向 LLM Serving 的可组合 GPU Kernel 库
→
SGLang 与 RadixAttention:跨请求复用 KV Cache
→
推测解码:从拒绝采样到工程实践
→
PagedAttention 与 vLLM KV Cache 管理
→
GQA 分组查询注意力:KV Cache 与模型质量的折中
→
KV Cache
16 篇自回归状态的存储、复用、迁移与压缩。
RoPE:相对位置怎样进入 Attention,长上下文又改变了什么
→
多模态 Serving:图片进入 LLM 之前发生了什么
→
Program-Aware Serving:Agent 等待工具时,GPU 状态该放在哪里
→
长请求治理:Chunked Prefill 之后,KV Cache 怎样避免被长输出占满
→
NVIDIA Dynamo:把多套推理引擎组织成一个系统
→
NIXL 与 KV Connector:把推理引擎和传输后端解耦
→
Mooncake:让 KV Cache 跨 Prefill 与 Decode 流动
→
KV Cache:自回归推理为什么必须保存历史状态
→
MLA:为什么一份 Latent 可以代替多头 KV Cache
→
NVFP4 KV Cache:Blackwell 上的 4-bit 缓存量化
→
llm-d:Kubernetes 原生分布式 LLM 推理栈
→
QuantSpec:分层量化 KV Cache 的自推测解码
→
DeepSeek V3.2 稀疏注意力:Lightning Indexer 与 Top-k 选择
→
SGLang 与 RadixAttention:跨请求复用 KV Cache
→
PagedAttention 与 vLLM KV Cache 管理
→
GQA 分组查询注意力:KV Cache 与模型质量的折中
→
推理调度
13 篇批处理、排队、公平性与运行时执行。
多模态 Serving:图片进入 LLM 之前发生了什么
→
Program-Aware Serving:Agent 等待工具时,GPU 状态该放在哪里
→
结构化生成:Grammar 怎样约束每一个 Token
→
长请求治理:Chunked Prefill 之后,KV Cache 怎样避免被长输出占满
→
Multi-LoRA Serving:一份 Base Model 怎样服务不同 Adapter
→
LLM 推理容量规划:从请求 Trace 推到 GPU 数量
→
Chunked Prefill:长 Prompt 为什么要切片执行
→
Continuous Batching:为什么 Batch 可以动态变化
→
vLLM Model Runner V2:GPU-native 与 async-first 的执行核心
→
vLLM V1 EngineCore:引擎进程与执行核心的解耦
→
FairBatching:面向 LLM 推理的公平批次形成
→
异步连续批处理:CPU/GPU 重叠与正确同步
→
大模型推理引擎对比:vLLM、SGLang 与 TensorRT-LLM
→
分布式推理
11 篇多实例、多节点与云原生推理系统。
Attention–FFN 解耦:一层 Transformer 为什么要跨两类 GPU Pool
→
P/D 弹性:扩容决定发出后,GPU 为什么还不能接请求
→
Wide EP:当 MoE Expert Parallel 横跨几十张 GPU
→
DeepEP:把 MoE 的 Dispatch 与 Combine 做成专用数据面
→
Expert Parallel:MoE Token 为什么要两次穿过 GPU 网络
→
分布式 LLM 推理故障恢复:一条流式请求怎样活下来
→
LLM 推理容量规划:从请求 Trace 推到 GPU 数量
→
NVIDIA Dynamo:把多套推理引擎组织成一个系统
→
NIXL 与 KV Connector:把推理引擎和传输后端解耦
→
DistServe:为什么 Prefill 与 Decode 要分开配置
→
llm-d:Kubernetes 原生分布式 LLM 推理栈
→
分离式推理
4 篇Prefill/Decode 解耦与 KV 数据面。
注意力机制
10 篇Attention 架构、长上下文与执行优化。
序列打包与变长 Attention:少算 Padding 之后,怎样保持训练目标不变
→
RoPE:相对位置怎样进入 Attention,长上下文又改变了什么
→
Sequence Parallel 与 Context Parallel:Token 维到底怎样切
→
FlashAttention-3:用异步流水榨出 Hopper 的 Attention 性能
→
MLA:为什么一份 Latent 可以代替多头 KV Cache
→
Ring Attention:把超长序列沿设备环流动
→
FlashAttention-2:从 IO-aware 到更好的并行划分
→
DeepSeek V3.2 稀疏注意力:Lightning Indexer 与 Top-k 选择
→
GQA 分组查询注意力:KV Cache 与模型质量的折中
→
FlashAttention:IO-aware 的精确注意力
→
推测解码
8 篇Draft、验证、接受率与系统协同。
GPU优化
29 篇Kernel、编译、执行图与硬件利用率。
Triton GEMM:从一个输出 Tile 到地址、边界与数据复用
→
混合精度训练:从 FP16/BF16 的数值边界到一次正确的参数更新
→
Roofline:从计算量、数据流量到可信的 GPU 性能判断
→
Activation Checkpointing:反向传播需要的张量,何时保存、何时重算
→
NCCL 内部机制:一次 AllReduce 如何变成拓扑图、Channel 与 GPU Kernel
→
GPUDirect RDMA:网卡如何直接访问 GPU Memory
→
DFlash:Block Diffusion 怎样一次生成一整段 Draft
→
结构化生成:Grammar 怎样约束每一个 Token
→
GPU 互联拓扑:数据怎样从 HBM 走到另一张 GPU 与远端 NIC
→
Zero-Bubble Pipeline Parallel:为什么 Weight Gradient 可以延后计算
→
Multi-LoRA Serving:一份 Base Model 怎样服务不同 Adapter
→
Collective Communication:AllReduce、AllGather、ReduceScatter 与 All-to-All
→
Sequence Parallel 与 Context Parallel:Token 维到底怎样切
→
Pipeline Parallel:Micro-batch 怎样流过 Transformer Stages
→
Tensor Parallel:怎样把一个 Transformer Layer 切到多张 GPU
→
W4A8:4-bit Weight 怎样喂给 8-bit Tensor Core
→
AWQ:为什么 4-bit 权重量化要先观察 Activation
→
SmoothQuant:把 Activation Outlier 迁移到 Weight
→
FP8 推理:E4M3、E5M2、Scale 与 Tensor Core 到底怎样配合
→
torch.compile:LLM Serving 从 Python Forward 到融合 GPU Kernel
→
CUDA Graph:把动态 LLM Serving 装进可重放的静态执行图
→
FlashAttention-3:用异步流水榨出 Hopper 的 Attention 性能
→
FlashAttention-2:从 IO-aware 到更好的并行划分
→
vLLM Model Runner V2:GPU-native 与 async-first 的执行核心
→
FlashInfer Sorting-Free Sampling:无需显式排序的 GPU 采样
→
FlashInfer-Bench:AI 生成 GPU Kernel 的评测与上线边界
→
异步连续批处理:CPU/GPU 重叠与正确同步
→
FlashInfer:面向 LLM Serving 的可组合 GPU Kernel 库
→
FlashAttention:IO-aware 的精确注意力
→
模型量化
6 篇权重、Activation 与 KV Cache 的低精度路径。
MoE
7 篇稀疏专家模型的路由、计算与部署。
专家并行
7 篇Expert ownership、Token Dispatch 与负载均衡。
分布式训练
15 篇状态分片与层内模型并行。
序列打包与变长 Attention:少算 Padding 之后,怎样保持训练目标不变
→
混合精度训练:从 FP16/BF16 的数值边界到一次正确的参数更新
→
Activation Checkpointing:反向传播需要的张量,何时保存、何时重算
→
NCCL 内部机制:一次 AllReduce 如何变成拓扑图、Channel 与 GPU Kernel
→
GPUDirect RDMA:网卡如何直接访问 GPU Memory
→
GPU 互联拓扑:数据怎样从 HBM 走到另一张 GPU 与远端 NIC
→
Zero-Bubble Pipeline Parallel:为什么 Weight Gradient 可以延后计算
→
Collective Communication:AllReduce、AllGather、ReduceScatter 与 All-to-All
→
RLHF/GRPO 系统数据流:一次训练迭代里四类模型怎样协作
→
Distributed Checkpoint:怎样保存并重分片多维训练状态
→
Sequence Parallel 与 Context Parallel:Token 维到底怎样切
→
Pipeline Parallel:Micro-batch 怎样流过 Transformer Stages
→
Tensor Parallel:怎样把一个 Transformer Layer 切到多张 GPU
→
从 Data Parallel 到 ZeRO/FSDP:训练显存到底怎样被切开
→
Ring Attention:把超长序列沿设备环流动
→
Kubernetes
4 篇容器编排、资源调度与故障恢复。
vLLM
5 篇vLLM 的缓存、调度与执行架构。
SGLang
4 篇SGLang 的缓存、推测解码与运行时。
FlashInfer
3 篇Serving GPU primitives、采样与评测。
FlashAttention
3 篇IO-aware Attention Kernel 的持续演进。
EAGLE
3 篇Feature-level speculative decoding 及其训练交付。
推荐系统
4 篇召回、排序、特征与行为序列建模。
机器学习
6 篇机器学习模型、算法与研究进展。
计算机视觉
2 篇视觉算法与生成模型。
编程基础
3 篇语言机制、数据结构与基础知识。
C/C++
2 篇C/C++ 语言与底层编程。
工程实践
7 篇工具、环境、工作流与经验记录。