AkiYang推理工程手记

按问题阅读

现在想解决什么问题?

从当前问题出发,沿已有文章找到概念、源码和实测依据。

全部系列 →

刚接触大模型推理

先分清推理阶段和多卡分工,再跟随一次请求进入 SGLang。

3 篇 · 由浅入深
  1. 01

    Prefill 与 Decode 为什么性能不同:从计算形状到执行开销

    同一份权重,为什么处理长输入和逐枚生成的性能不同?从矩阵形状讲到权重复用、专家 Token 数和每轮固定开销。

    入门 · 约 21 分钟
  2. 02

    模型怎样跨多卡运行:从显存容量到 TP、DP Attention 与 EP

    每个 Token 只激活部分专家,为什么仍需要放下整套权重?先算设备内存,再区分 TP、DP 和 EP 各自拆分什么。

    入门 · 约 16 分钟
  3. 03

    SGLang 请求生命周期:从 Chat Completion 到 Ascend NPU

    一句聊天消息怎样变成 NPU 上的一轮计算?跟随一条请求,串起分词、排队、缓存、组批和持续生成。

    入门 · 约 28 分钟

想读懂 SGLang 源码

从一枚 Token 的执行视图,走到调度、模型执行与 Attention。

4 篇 · 由浅入深
  1. 01

    从一次 Decode 读懂 SGLang:Tensor、缓存与下一枚 Token

    刚生成的 Token,下一轮怎样变成模型输入?用三条请求的小批次串起长度、KV 写入、Attention、MoE 和采样。

    入门 · 约 23 分钟
  2. 02

    SGLang Scheduler:请求怎样组批、执行和持续生成

    请求会持续很多轮,设备每轮只执行一个批次。看 Scheduler 怎样在前缀缓存、Token 预算和 KV 空间之间安排工作。

    进阶 · 约 17 分钟
  3. 03

    SGLang ModelRunner:九个输入 Token 怎样产生两行 Logits

    两条请求共有九个输入 Token,为什么最后只需两行 Logits?用这个例子读懂 ModelRunner 的输入、前向和采样交接。

    进阶 · 约 11 分钟
  4. 04

    DeepSeek-V4 Attention:Query、缓存写入与历史寻址

    多条请求打包进同一个 Tensor 后,Attention 怎样找到各自的历史?沿 Query、缓存写入和页表追踪一次 Decode。

    进阶 · 约 11 分钟

服务能跑,速度却不理想

先把压测口径对齐,再结合吞吐案例和 NPU 时间线定位瓶颈。

4 篇 · 由浅入深
  1. 01

    用 AISBench 压测 SGLang:从第一条请求到一份可信报告

    从一条请求接通SGLang,到独立配置、JSONL、N/C/r和原生稳态后处理。附小样例,讲清retry的版本语义、实际token长度和原始结果怎样保留。

    入门 · 约 12 分钟
  2. 02

    AISBench 的 whole、native、TPOT 和 ITL,到底在量什么?

    TPOT 10.4ms、ITL 58.6ms为何同时成立?沿固定AISBench源码解释请求时间线、事件加权、whole/native选样边界、并发封顶与两种输出token/s。

    入门 · 约 12 分钟
  3. 03

    Decode 已经很快了,吞吐为什么上不去?

    平均 TPOT 已经低至 8.7ms,吞吐仍没跟上。一个 4-token 尾块,把排查方向从 Decode 带回了 Prefill 合批。

    进阶 · 约 13 分钟
  4. 04

    NPU 时间线里有 19% 空隙,为什么不能直接得到 19% 加速?

    NPU 时间线约两成空白,为什么不能当成可回收的加速空间?先算清区间覆盖,再检查等待、跨 Rank 依赖和测量范围。

    进阶 · 约 12 分钟

正在研究投机解码

先走完 Draft、Verify 与 Accept,再理解 KV 提交和真实收益边界。

4 篇 · 由浅入深
  1. 01

    DeepSeek-V4 DSpark:一轮 Draft、Verify、Accept 与 Commit

    Draft 猜 A/B/C,Target 接受 A/B 后生成 X,下一轮从哪里继续?沿一个例子走完 DSpark 的提议、验证、接受和提交。

    进阶 · 约 18 分钟
  2. 02

    投机解码 Accept:从 Verify 行到最终输出路径

    Verify 算出了候选位置的预测,哪些 Token 最终能输出?区分几种接受规则,并解释行索引与新 bonus 的错位关系。

    深入研究 · 约 17 分钟
  3. 03

    投机解码 KV 管理:接受路径怎样提交、整理与回收

    候选算过了,不代表都能留在历史里。看接受路径怎样映射到正式 KV,以及被拒绝候选的空间何时整理、复用或释放。

    深入研究 · 约 25 分钟
  4. 04

    投机解码的性能收支:接受长度、Verify 成本与并发

    接受长度变大,投机解码为什么仍可能变慢?把每轮有效输出与 Draft、Verify、通信和并发成本放在一起算。

    进阶 · 约 15 分钟

需要查一个术语?打开速查文章 →

搜索文章与 Skills

↑ ↓ 选择 · Enter 打开 · Esc 关闭 · Ctrl / ⌘ K 搜索

工程图