<?xml version='1.0' encoding='utf-8'?>
<rss version="2.0"><channel><title>AkiYang · 推理工程手记</title><link>https://akiyangdev.github.io/llm-inference-notes/</link><description>SGLang、Ascend 与 DeepSeek 推理工程文章</description><language>zh-CN</language><item><title>AISBench 的 whole、native、TPOT 和 ITL，到底在量什么？</title><link>https://akiyangdev.github.io/llm-inference-notes/articles/performance/aisbench-whole-native-tpot-itl/</link><description>TPOT 10.4ms、ITL 58.6ms为何同时成立？沿固定AISBench源码解释请求时间线、事件加权、whole/native选样边界、并发封顶与两种输出token/s。</description><guid isPermaLink="true">https://akiyangdev.github.io/llm-inference-notes/articles/performance/aisbench-whole-native-tpot-itl/</guid><pubDate>Sat, 24 Oct 2026 11:59:50 +0800</pubDate></item><item><title>静态 EPLB 之后：动态专家负载均衡怎样安全地迁移权重？</title><link>https://akiyangdev.github.io/llm-inference-notes/articles/distributed/ascend-dynamic-eplb-weight-migration/</link><description>从逻辑专家与物理槽位出发，沿真实Ascend适配解释W8A8/NZ权重暂存、HCCL通信等待、逐层映射提交和Graph地址约束，结合功能验证与正负性能结果分析动态EPLB的成本。</description><guid isPermaLink="true">https://akiyangdev.github.io/llm-inference-notes/articles/distributed/ascend-dynamic-eplb-weight-migration/</guid><pubDate>Sat, 24 Oct 2026 11:57:30 +0800</pubDate></item><item><title>SGLang 流式压测：怎样保留接受率和缓存计数，又不改坏计时</title><link>https://akiyangdev.github.io/llm-inference-notes/articles/performance/sglang-stream-acceptance-cache-timing/</link><description>8条请求已带投机开关，SSE却没有sglext。从字段产生、父类解析和writer落盘走到原计时规则，解释metadata-only事件、接受率分母与whole/native窗口。</description><guid isPermaLink="true">https://akiyangdev.github.io/llm-inference-notes/articles/performance/sglang-stream-acceptance-cache-timing/</guid><pubDate>Sat, 24 Oct 2026 11:45:18 +0800</pubDate></item><item><title>128K 已经命中 90% 前缀缓存，为什么推理仍然不轻松？</title><link>https://akiyangdev.github.io/llm-inference-notes/articles/performance/128k-prefix-cache-remaining-costs/</link><description>沿真实128K/1K请求区分复用前缀、新Query和逻辑上下文，解释DeepSeek-V4的SWA/C4/C128历史访问、PD状态交接，以及90%命中之后仍然存在的生成与排队成本。</description><guid isPermaLink="true">https://akiyangdev.github.io/llm-inference-notes/articles/performance/128k-prefix-cache-remaining-costs/</guid><pubDate>Sat, 24 Oct 2026 11:42:32 +0800</pubDate></item><item><title>用 AISBench 压测 SGLang：从第一条请求到一份可信报告</title><link>https://akiyangdev.github.io/llm-inference-notes/articles/performance/aisbench-sglang-first-request-to-report/</link><description>从一条请求接通SGLang，到独立配置、JSONL、N/C/r和原生稳态后处理。附小样例，讲清retry的版本语义、实际token长度和原始结果怎样保留。</description><guid isPermaLink="true">https://akiyangdev.github.io/llm-inference-notes/articles/performance/aisbench-sglang-first-request-to-report/</guid><pubDate>Sat, 24 Oct 2026 11:23:08 +0800</pubDate></item><item><title>CP2 替代 CP4：通信组变小了，为什么整体吞吐没有提高？</title><link>https://akiyangdev.github.io/llm-inference-notes/articles/performance/ascend-910c-cp2-vs-cp4-prefill-throughput/</link><description>复盘CP4/DP4切到CP2/DP8的N480同负载负例：单rank行数、page预算、EP16通信轮次与请求驻留时间，解释TPOT改善却没有吞吐收益。</description><guid isPermaLink="true">https://akiyangdev.github.io/llm-inference-notes/articles/performance/ascend-910c-cp2-vs-cp4-prefill-throughput/</guid><pubDate>Sat, 24 Oct 2026 11:14:20 +0800</pubDate></item><item><title>专家计数都采到了，为什么导出还会失败？</title><link>https://akiyangdev.github.io/llm-inference-notes/articles/performance/expert-count-export-hccl-gloo/</link><description>160 条请求已生成完，存专家计数时服务却崩了。沿错误栈追到设备通信，再看 CPU/Gloo 导出怎样保住统计含义。</description><guid isPermaLink="true">https://akiyangdev.github.io/llm-inference-notes/articles/performance/expert-count-export-hccl-gloo/</guid><pubDate>Sat, 24 Oct 2026 10:58:45 +0800</pubDate></item><item><title>NPU 时间线里有 19% 空隙，为什么不能直接得到 19% 加速？</title><link>https://akiyangdev.github.io/llm-inference-notes/articles/performance/npu-timeline-gaps-and-recoverable-speedup/</link><description>NPU 时间线约两成空白，为什么不能当成可回收的加速空间？先算清区间覆盖，再检查等待、跨 Rank 依赖和测量范围。</description><guid isPermaLink="true">https://akiyangdev.github.io/llm-inference-notes/articles/performance/npu-timeline-gaps-and-recoverable-speedup/</guid><pubDate>Sat, 24 Oct 2026 10:56:12 +0800</pubDate></item><item><title>128K 输入、90% 前缀缓存：怎样把压测场景真正跑准</title><link>https://akiyangdev.github.io/llm-inference-notes/articles/performance/128k-prefix-cache-benchmark-calibration/</link><description>输入长度正确、请求全部成功，缓存却没达到九成。记录公共前缀、预热与逐条检查怎样把压测场景校准。</description><guid isPermaLink="true">https://akiyangdev.github.io/llm-inference-notes/articles/performance/128k-prefix-cache-benchmark-calibration/</guid><pubDate>Sat, 24 Oct 2026 10:43:21 +0800</pubDate></item><item><title>Prefill chunk 应该怎么选：从 DP 折算、页对齐到通信轮次与尾块合批</title><link>https://akiyangdev.github.io/llm-inference-notes/articles/performance/deepseek-v4-prefill-chunk-size-selection/</link><description>把 chunk 从 8192 增到 8320，分块少了，吞吐却略降。结合页对齐、并行布局和通信轮次解释为什么。</description><guid isPermaLink="true">https://akiyangdev.github.io/llm-inference-notes/articles/performance/deepseek-v4-prefill-chunk-size-selection/</guid><pubDate>Sat, 24 Oct 2026 10:40:31 +0800</pubDate></item><item><title>DeepSeek-V4 IndexCache freq2：跨层 TopK 复用省了什么，又改变了什么</title><link>https://akiyangdev.github.io/llm-inference-notes/articles/performance/deepseek-v4-indexcache-freq2-cross-layer-topk-reuse/</link><description>跨层复用 TopK 后，哪些计算省下了，哪些状态还得更新？对照实际执行路径和同负载实验，看 freq2 的收益与代价。</description><guid isPermaLink="true">https://akiyangdev.github.io/llm-inference-notes/articles/performance/deepseek-v4-indexcache-freq2-cross-layer-topk-reuse/</guid><pubDate>Sat, 24 Oct 2026 10:26:35 +0800</pubDate></item><item><title>Ascend 910C上的P端场景静态EPLB：从路由计数、专家布局到实测收益</title><link>https://akiyangdev.github.io/llm-inference-notes/articles/performance/ascend-910c-prefill-scenario-static-eplb/</link><description>专家布局怎样从路由计数拟合出来？沿一次 P 端静态方案解释放置与分发，并说明 14.18% 的组合收益该怎样归因。</description><guid isPermaLink="true">https://akiyangdev.github.io/llm-inference-notes/articles/performance/ascend-910c-prefill-scenario-static-eplb/</guid><pubDate>Sat, 24 Oct 2026 10:11:05 +0800</pubDate></item><item><title>Decode 已经很快了，吞吐为什么上不去？</title><link>https://akiyangdev.github.io/llm-inference-notes/articles/performance/decode-fast-throughput-limited-by-prefill/</link><description>平均 TPOT 已经低至 8.7ms，吞吐仍没跟上。一个 4-token 尾块，把排查方向从 Decode 带回了 Prefill 合批。</description><guid isPermaLink="true">https://akiyangdev.github.io/llm-inference-notes/articles/performance/decode-fast-throughput-limited-by-prefill/</guid><pubDate>Sat, 24 Oct 2026 10:04:14 +0800</pubDate></item><item><title>Ascend 910C推理调优负例分析：为什么合理的优化没有带来吞吐收益</title><link>https://akiyangdev.github.io/llm-inference-notes/articles/performance/ascend-910c-inference-tuning-negative-results-and-stop-rules/</link><description>TPOT 降了，吞吐却没涨；分块少了，执行反而慢了。沿几项负例，判断原假设漏了什么、何时值得重试。</description><guid isPermaLink="true">https://akiyangdev.github.io/llm-inference-notes/articles/performance/ascend-910c-inference-tuning-negative-results-and-stop-rules/</guid><pubDate>Sat, 24 Oct 2026 09:53:42 +0800</pubDate></item><item><title>一次Ascend 910C推理调优复盘：真正有效的优化、失败假设与实验成本</title><link>https://akiyangdev.github.io/llm-inference-notes/articles/performance/ascend-910c-inference-tuning-effective-optimizations-and-costs/</link><description>哪些改动带来了吞吐，哪些只增加了实验成本？放在一起看 P 端合批、IndexCache、静态布局和 Compact 的真实对照。</description><guid isPermaLink="true">https://akiyangdev.github.io/llm-inference-notes/articles/performance/ascend-910c-inference-tuning-effective-optimizations-and-costs/</guid><pubDate>Sat, 24 Oct 2026 09:43:15 +0800</pubDate></item><item><title>把性能目标交给 AI 之后：大模型推理的全自动调优闭环</title><link>https://akiyangdev.github.io/llm-inference-notes/articles/performance/ai-driven-inference-autotuning-decision-loop/</link><description>把吞吐目标交给 AI 后，下一轮实验该怎么选？结合真实调优，讨论比较条件、候选依据和停止投入的时机。</description><guid isPermaLink="true">https://akiyangdev.github.io/llm-inference-notes/articles/performance/ai-driven-inference-autotuning-decision-loop/</guid><pubDate>Wed, 21 Oct 2026 19:50:15 +0800</pubDate></item><item><title>一轮实验什么时候算完成：全自动调优的状态、证据与恢复</title><link>https://akiyangdev.github.io/llm-inference-notes/articles/performance/ai-driven-inference-autotuning-execution-and-evidence/</link><description>640 条请求已成功，统计程序却退出非零。怎样接着处理原数据，并让配置、进程和结果始终对得上？</description><guid isPermaLink="true">https://akiyangdev.github.io/llm-inference-notes/articles/performance/ai-driven-inference-autotuning-execution-and-evidence/</guid><pubDate>Wed, 21 Oct 2026 19:50:15 +0800</pubDate></item><item><title>让 AI 连续调优几天后，我发现实验流程也有瓶颈</title><link>https://akiyangdev.github.io/llm-inference-notes/articles/performance/inference-tuning-workflow-postmortem/</link><description>正式请求只跑了约三分钟，准备和修统计却耗时更久。沿几次真实返工，看连续调优的时间花在了哪里。</description><guid isPermaLink="true">https://akiyangdev.github.io/llm-inference-notes/articles/performance/inference-tuning-workflow-postmortem/</guid><pubDate>Wed, 21 Oct 2026 17:46:11 +0800</pubDate></item><item><title>Ascend 950DT 单机 PD 调优：128K/1K、90% Cache 场景下的配置与实测</title><link>https://akiyangdev.github.io/llm-inference-notes/articles/performance/ascend-950dt-single-node-pd-optimization/</link><description>一次 Ascend 950DT 单机长输入调优记录：解释两端配置、缓存与并发如何一起影响结果，避免把总收益归给一个开关。</description><guid isPermaLink="true">https://akiyangdev.github.io/llm-inference-notes/articles/performance/ascend-950dt-single-node-pd-optimization/</guid><pubDate>Wed, 14 Oct 2026 18:05:21 +0800</pubDate></item><item><title>从缓存校准到并发取舍：DeepSeek-V4-Pro 在 Ascend 910C 上的一次 32k/1k 调优记录</title><link>https://akiyangdev.github.io/llm-inference-notes/articles/performance/deepseek-v4-pro-32k-prefix-cache-concurrency-tuning/</link><description>先把缓存命中率校准，再比较并发。记录一次 32K/1K 调优中，吞吐、TPOT 与首 Token 等待之间的取舍。</description><guid isPermaLink="true">https://akiyangdev.github.io/llm-inference-notes/articles/performance/deepseek-v4-pro-32k-prefix-cache-concurrency-tuning/</guid><pubDate>Sat, 10 Oct 2026 15:55:39 +0800</pubDate></item><item><title>GSM8K 精度排查：从 200 题失败到全量与逐题对照</title><link>https://akiyangdev.github.io/llm-inference-notes/articles/sglang/gsm8k-accuracy-debugging-from-200-to-full-evaluation/</link><description>200 题得分未过线，扩大到 1314 题后却通过了。沿配置对照和逐题结果，分开检查评测覆盖与输出稳定性。</description><guid isPermaLink="true">https://akiyangdev.github.io/llm-inference-notes/articles/sglang/gsm8k-accuracy-debugging-from-200-to-full-evaluation/</guid><pubDate>Sat, 10 Oct 2026 15:25:26 +0800</pubDate></item><item><title>小 Tensor 为什么保活大内存：SGLang PR #39120 的 View 缓存修复</title><link>https://akiyangdev.github.io/llm-inference-notes/articles/pr-reviews/sglang-pr-39120-tensor-view-storage-cache/</link><description>缓存里只有 0.8 MiB 的小 Tensor，为什么可能占住约 7.8 MiB？解释 View 如何引用整块存储，以及补丁为什么选择复制。</description><guid isPermaLink="true">https://akiyangdev.github.io/llm-inference-notes/articles/pr-reviews/sglang-pr-39120-tensor-view-storage-cache/</guid><pubDate>Mon, 21 Sep 2026 20:53:14 +0800</pubDate></item><item><title>日志里的 TP16 为什么应是 TP8：SGLang PR #39871</title><link>https://akiyangdev.github.io/llm-inference-notes/articles/pr-reviews/sglang-pr-39871-attention-parallel-widths/</link><description>TP16 / DP2 的 Attention 实际宽度是 8，日志却打印 16。这个小补丁说明了原始配置值和运行时派生值为什么要分清。</description><guid isPermaLink="true">https://akiyangdev.github.io/llm-inference-notes/articles/pr-reviews/sglang-pr-39871-attention-parallel-widths/</guid><pubDate>Mon, 21 Sep 2026 20:10:06 +0800</pubDate></item><item><title>模型怎样跨多卡运行：从显存容量到 TP、DP Attention 与 EP</title><link>https://akiyangdev.github.io/llm-inference-notes/articles/distributed/why-large-models-need-multi-card-tp-dp-ep/</link><description>每个 Token 只激活部分专家，为什么仍需要放下整套权重？先算设备内存，再区分 TP、DP 和 EP 各自拆分什么。</description><guid isPermaLink="true">https://akiyangdev.github.io/llm-inference-notes/articles/distributed/why-large-models-need-multi-card-tp-dp-ep/</guid><pubDate>Mon, 21 Sep 2026 20:01:10 +0800</pubDate></item><item><title>从一次 Decode 读懂 SGLang：Tensor、缓存与下一枚 Token</title><link>https://akiyangdev.github.io/llm-inference-notes/articles/fundamentals/sglang-decode-source-reading-primer/</link><description>刚生成的 Token，下一轮怎样变成模型输入？用三条请求的小批次串起长度、KV 写入、Attention、MoE 和采样。</description><guid isPermaLink="true">https://akiyangdev.github.io/llm-inference-notes/articles/fundamentals/sglang-decode-source-reading-primer/</guid><pubDate>Mon, 21 Sep 2026 19:43:45 +0800</pubDate></item><item><title>Prefill 与 Decode 为什么性能不同：从计算形状到执行开销</title><link>https://akiyangdev.github.io/llm-inference-notes/articles/fundamentals/prefill-vs-decode-performance/</link><description>同一份权重，为什么处理长输入和逐枚生成的性能不同？从矩阵形状讲到权重复用、专家 Token 数和每轮固定开销。</description><guid isPermaLink="true">https://akiyangdev.github.io/llm-inference-notes/articles/fundamentals/prefill-vs-decode-performance/</guid><pubDate>Mon, 21 Sep 2026 17:33:23 +0800</pubDate></item><item><title>DSpark 自适应 Verify：怎样分配候选预算</title><link>https://akiyangdev.github.io/llm-inference-notes/articles/speculative-decoding/deepseek-v4-dspark-adaptive-verify-scheduler/</link><description>验证预算有限时，每条请求都分配相同长度合适吗？解释 DSpark 的候选预算分配，以及 Ascend 固定版本仍使用 static 的原因。</description><guid isPermaLink="true">https://akiyangdev.github.io/llm-inference-notes/articles/speculative-decoding/deepseek-v4-dspark-adaptive-verify-scheduler/</guid><pubDate>Mon, 21 Sep 2026 16:40:15 +0800</pubDate></item><item><title>DeepSeek-V4 W8A8 性能分析：小 M、NZ 布局与测量方法</title><link>https://akiyangdev.github.io/llm-inference-notes/articles/performance/deepseek-v4-w8a8-ascend-910c-performance/</link><description>INT8 矩阵乘法省下的时间，能否覆盖动态量化等额外开销？结合小 M、专家批次和 NZ 布局分析该怎样测量。</description><guid isPermaLink="true">https://akiyangdev.github.io/llm-inference-notes/articles/performance/deepseek-v4-w8a8-ascend-910c-performance/</guid><pubDate>Mon, 21 Sep 2026 15:58:22 +0800</pubDate></item><item><title>DeepSeek-V4 W8A8 执行链：从量化权重到 Ascend INT8 算子</title><link>https://akiyangdev.github.io/llm-inference-notes/articles/ascend/deepseek-v4-w8a8-ascend-910c/</link><description>W8A8 权重加载后，激活在哪里量化，矩阵乘法又交给谁？分别沿 Dense 与 MoE 追到 Ascend 算子入口。</description><guid isPermaLink="true">https://akiyangdev.github.io/llm-inference-notes/articles/ascend/deepseek-v4-w8a8-ascend-910c/</guid><pubDate>Mon, 21 Sep 2026 15:12:48 +0800</pubDate></item><item><title>SGLang Collective：从张量分片到 Attention 与 MoE 通信</title><link>https://akiyangdev.github.io/llm-inference-notes/articles/distributed/sglang-collectives-deepseek-v4/</link><description>该求和、拼接，还是把 Token 送给另一位专家？先看四类通信的小张量例子，再对照 SGLang 的 Attention 与 MoE。</description><guid isPermaLink="true">https://akiyangdev.github.io/llm-inference-notes/articles/distributed/sglang-collectives-deepseek-v4/</guid><pubDate>Mon, 21 Sep 2026 13:00:33 +0800</pubDate></item><item><title>SGLang Rank 与 Group：读懂 TP、DP Attention 和 EP 坐标</title><link>https://akiyangdev.github.io/llm-inference-notes/articles/distributed/sglang-rank-group-deepseek-v4/</link><description>同一个进程为什么有好几个 Rank 编号？用 TP16 / DP8 展开它在 Attention、请求分组和 MoE 中的不同位置。</description><guid isPermaLink="true">https://akiyangdev.github.io/llm-inference-notes/articles/distributed/sglang-rank-group-deepseek-v4/</guid><pubDate>Mon, 21 Sep 2026 11:51:13 +0800</pubDate></item><item><title>在 Ascend 910C 上分析 DSpark：从阶段计时到 NPU 时间线</title><link>https://akiyangdev.github.io/llm-inference-notes/articles/performance/deepseek-v4-speculative-decoding-ascend-profiling/</link><description>DSpark 慢在哪一段，怎样从计时字段追到 NPU 时间线？说明阶段边界、通信等待和 Profiling 对照方法。</description><guid isPermaLink="true">https://akiyangdev.github.io/llm-inference-notes/articles/performance/deepseek-v4-speculative-decoding-ascend-profiling/</guid><pubDate>Mon, 21 Sep 2026 11:19:11 +0800</pubDate></item><item><title>Ascend 910C 投机解码：Graph、多流与通信的执行依赖</title><link>https://akiyangdev.github.io/llm-inference-notes/articles/performance/deepseek-v4-speculative-ascend-performance-critical-path-analysis/</link><description>开了 Graph 和多流，下一步为什么仍在等？沿 EAGLE/NextN 标出候选、缓存和通信依赖，再说明怎样与实测时间线对应。</description><guid isPermaLink="true">https://akiyangdev.github.io/llm-inference-notes/articles/performance/deepseek-v4-speculative-ascend-performance-critical-path-analysis/</guid><pubDate>Mon, 21 Sep 2026 11:06:39 +0800</pubDate></item><item><title>AI 推理基础设施名词表：从 Token 到 Ascend Kernel</title><link>https://akiyangdev.github.io/llm-inference-notes/articles/fundamentals/ai-infra-working-glossary/</link><description>读源码时遇到陌生名词，可以按正在解决的问题查：输入表示、模型计算、缓存调度、多卡通信和 Ascend 执行。</description><guid isPermaLink="true">https://akiyangdev.github.io/llm-inference-notes/articles/fundamentals/ai-infra-working-glossary/</guid><pubDate>Mon, 21 Sep 2026 10:51:43 +0800</pubDate></item><item><title>投机解码的性能收支：接受长度、Verify 成本与并发</title><link>https://akiyangdev.github.io/llm-inference-notes/articles/performance/deepseek-v4-speculative-performance-analysis/</link><description>接受长度变大，投机解码为什么仍可能变慢？把每轮有效输出与 Draft、Verify、通信和并发成本放在一起算。</description><guid isPermaLink="true">https://akiyangdev.github.io/llm-inference-notes/articles/performance/deepseek-v4-speculative-performance-analysis/</guid><pubDate>Sun, 20 Sep 2026 23:14:47 +0800</pubDate></item><item><title>SGLang 投机解码调度：请求进度、设备状态与跨轮交接</title><link>https://akiyangdev.github.io/llm-inference-notes/articles/speculative-decoding/sglang-speculative-decoding-scheduler-source-analysis/</link><description>开启重叠执行后，CPU 记录和设备进度可能暂时不同。看请求长度、KV 预留和结果发布怎样保证下一轮接得上。</description><guid isPermaLink="true">https://akiyangdev.github.io/llm-inference-notes/articles/speculative-decoding/sglang-speculative-decoding-scheduler-source-analysis/</guid><pubDate>Sun, 20 Sep 2026 23:10:35 +0800</pubDate></item><item><title>投机解码 Accept：从 Verify 行到最终输出路径</title><link>https://akiyangdev.github.io/llm-inference-notes/articles/speculative-decoding/deepseek-v4-accept-decision-source-analysis/</link><description>Verify 算出了候选位置的预测，哪些 Token 最终能输出？区分几种接受规则，并解释行索引与新 bonus 的错位关系。</description><guid isPermaLink="true">https://akiyangdev.github.io/llm-inference-notes/articles/speculative-decoding/deepseek-v4-accept-decision-source-analysis/</guid><pubDate>Sun, 20 Sep 2026 22:40:02 +0800</pubDate></item><item><title>EAGLE Tree Attention：候选布局、位置与可见性</title><link>https://akiyangdev.github.io/llm-inference-notes/articles/speculative-decoding/deepseek-v4-tree-attention-source-analysis/</link><description>候选树排成 Tensor 后，一行怎样只读自己的祖先？用一棵小树解释位置和可见性；多分支部分属于通用 EAGLE 机制。</description><guid isPermaLink="true">https://akiyangdev.github.io/llm-inference-notes/articles/speculative-decoding/deepseek-v4-tree-attention-source-analysis/</guid><pubDate>Sun, 20 Sep 2026 22:29:11 +0800</pubDate></item><item><title>投机解码 KV 管理：接受路径怎样提交、整理与回收</title><link>https://akiyangdev.github.io/llm-inference-notes/articles/speculative-decoding/deepseek-v4-speculative-kv-commit-compact-rollback-source-analysis/</link><description>候选算过了，不代表都能留在历史里。看接受路径怎样映射到正式 KV，以及被拒绝候选的空间何时整理、复用或释放。</description><guid isPermaLink="true">https://akiyangdev.github.io/llm-inference-notes/articles/speculative-decoding/deepseek-v4-speculative-kv-commit-compact-rollback-source-analysis/</guid><pubDate>Sun, 20 Sep 2026 21:42:36 +0800</pubDate></item><item><title>多卡投机解码：Draft、Verify 与 Accept 怎样保持一致</title><link>https://akiyangdev.github.io/llm-inference-notes/articles/distributed/deepseek-v4-speculative-distributed-consistency-source-analysis/</link><description>一张卡接受两枚候选，另一张接受三枚，会发生什么？区分模型分片通信与投机决策同步，追踪分歧怎样传到下一轮。</description><guid isPermaLink="true">https://akiyangdev.github.io/llm-inference-notes/articles/distributed/deepseek-v4-speculative-distributed-consistency-source-analysis/</guid><pubDate>Sun, 20 Sep 2026 21:08:53 +0800</pubDate></item><item><title>EAGLE 候选树：从候选池到 Verify 与接受路径</title><link>https://akiyangdev.github.io/llm-inference-notes/articles/speculative-decoding/deepseek-v4-eagle-draft-tree-source-analysis/</link><description>EAGLE 怎样把候选分支整理成一次 Verify 输入？跟着小树读索引和接受路径；DeepSeek-V4 固定版本仍限定 topk=1。</description><guid isPermaLink="true">https://akiyangdev.github.io/llm-inference-notes/articles/speculative-decoding/deepseek-v4-eagle-draft-tree-source-analysis/</guid><pubDate>Sun, 20 Sep 2026 19:49:17 +0800</pubDate></item><item><title>DeepSeek-V4 MTP：NextN 怎样逐步生成候选</title><link>https://akiyangdev.github.io/llm-inference-notes/articles/speculative-decoding/deepseek-v4-mtp-speculative-decoding-source-analysis/</link><description>三枚 Draft 候选需要几次 NextN Forward？算清第一枚候选的来源、后续逐步预测和 Target 验证窗口的关系。</description><guid isPermaLink="true">https://akiyangdev.github.io/llm-inference-notes/articles/speculative-decoding/deepseek-v4-mtp-speculative-decoding-source-analysis/</guid><pubDate>Sun, 20 Sep 2026 19:27:32 +0800</pubDate></item><item><title>DeepSeek-V4 PD 分离：首 Token、KV 状态与 Decode 接管</title><link>https://akiyangdev.github.io/llm-inference-notes/articles/sglang/deepseek-v4-pd-disaggregation-source-analysis/</link><description>P 端已经采样出首 Token，为什么它还没有自己的 KV？从这个交接点看 Decode 接管需要哪些缓存、资源和确认。</description><guid isPermaLink="true">https://akiyangdev.github.io/llm-inference-notes/articles/sglang/deepseek-v4-pd-disaggregation-source-analysis/</guid><pubDate>Sun, 20 Sep 2026 19:06:22 +0800</pubDate></item><item><title>DeepSeek-V4 DSpark：一轮 Draft、Verify、Accept 与 Commit</title><link>https://akiyangdev.github.io/llm-inference-notes/articles/speculative-decoding/deepseek-v4-speculative-decoding-source-analysis/</link><description>Draft 猜 A/B/C，Target 接受 A/B 后生成 X，下一轮从哪里继续？沿一个例子走完 DSpark 的提议、验证、接受和提交。</description><guid isPermaLink="true">https://akiyangdev.github.io/llm-inference-notes/articles/speculative-decoding/deepseek-v4-speculative-decoding-source-analysis/</guid><pubDate>Sun, 20 Sep 2026 18:52:38 +0800</pubDate></item><item><title>DeepSeek-V4 DSpark 的并行限制与 Draft 布局</title><link>https://akiyangdev.github.io/llm-inference-notes/articles/distributed/deepseek-v4-dspark-parallel-layout-analysis/</link><description>Target 能使用 TP32 / DP16，为什么 MoE Draft 启动时被拒绝？追踪 DSpark 的配置检查、Token 布局和决策同步。</description><guid isPermaLink="true">https://akiyangdev.github.io/llm-inference-notes/articles/distributed/deepseek-v4-dspark-parallel-layout-analysis/</guid><pubDate>Sun, 20 Sep 2026 16:44:09 +0800</pubDate></item><item><title>DeepSeek-V4 分布式 Forward：Attention 与 MoE 怎样交换布局</title><link>https://akiyangdev.github.io/llm-inference-notes/articles/sglang/deepseek-v4-distributed-parallel-source-analysis/</link><description>同一批进程在 Attention 和 MoE 中怎样改变分工？用 TP32 / DP16 的 Target 布局追踪 Token 行的转换与恢复。</description><guid isPermaLink="true">https://akiyangdev.github.io/llm-inference-notes/articles/sglang/deepseek-v4-distributed-parallel-source-analysis/</guid><pubDate>Sun, 20 Sep 2026 16:32:31 +0800</pubDate></item><item><title>DeepSeek-V4 MoE：Token 从路由到专家计算，再回到原位置</title><link>https://akiyangdev.github.io/llm-inference-notes/articles/sglang/deepseek-v4-moe-source-analysis/</link><description>一个 Token 会被送到哪些专家，算完又怎样回到原位置？用四个 Rank、八个专家的例子解释路由、分发和合并。</description><guid isPermaLink="true">https://akiyangdev.github.io/llm-inference-notes/articles/sglang/deepseek-v4-moe-source-analysis/</guid><pubDate>Sun, 20 Sep 2026 16:18:22 +0800</pubDate></item><item><title>DeepSeek-V4 Attention：Query、缓存写入与历史寻址</title><link>https://akiyangdev.github.io/llm-inference-notes/articles/sglang/deepseek-v4-attention-source-analysis/</link><description>多条请求打包进同一个 Tensor 后，Attention 怎样找到各自的历史？沿 Query、缓存写入和页表追踪一次 Decode。</description><guid isPermaLink="true">https://akiyangdev.github.io/llm-inference-notes/articles/sglang/deepseek-v4-attention-source-analysis/</guid><pubDate>Sun, 20 Sep 2026 15:58:45 +0800</pubDate></item><item><title>SGLang ModelRunner：九个输入 Token 怎样产生两行 Logits</title><link>https://akiyangdev.github.io/llm-inference-notes/articles/sglang/sglang-modelrunner-source-analysis/</link><description>两条请求共有九个输入 Token，为什么最后只需两行 Logits？用这个例子读懂 ModelRunner 的输入、前向和采样交接。</description><guid isPermaLink="true">https://akiyangdev.github.io/llm-inference-notes/articles/sglang/sglang-modelrunner-source-analysis/</guid><pubDate>Sun, 20 Sep 2026 15:45:51 +0800</pubDate></item><item><title>SGLang 请求生命周期：从 Chat Completion 到 Ascend NPU</title><link>https://akiyangdev.github.io/llm-inference-notes/articles/sglang/sglang-ascend-request-lifecycle/</link><description>一句聊天消息怎样变成 NPU 上的一轮计算？跟随一条请求，串起分词、排队、缓存、组批和持续生成。</description><guid isPermaLink="true">https://akiyangdev.github.io/llm-inference-notes/articles/sglang/sglang-ascend-request-lifecycle/</guid><pubDate>Sun, 20 Sep 2026 15:38:39 +0900</pubDate></item><item><title>SGLang Scheduler：请求怎样组批、执行和持续生成</title><link>https://akiyangdev.github.io/llm-inference-notes/articles/sglang/sglang-scheduler-source-analysis/</link><description>请求会持续很多轮，设备每轮只执行一个批次。看 Scheduler 怎样在前缀缓存、Token 预算和 KV 空间之间安排工作。</description><guid isPermaLink="true">https://akiyangdev.github.io/llm-inference-notes/articles/sglang/sglang-scheduler-source-analysis/</guid><pubDate>Sun, 20 Sep 2026 15:32:54 +0800</pubDate></item></channel></rss>