Home vLLM / SGLang 源码面试题系列:从基础到 Staff
Post
Cancel

vLLM / SGLang 源码面试题系列:从基础到 Staff

系列说明

这套材料基于 vLLM 与 SGLang 的固定源码版本和真实运行实验整理。主线题库共 60 题,从推理基础递进到 Staff 级系统设计;另保留 24 道长篇综合题和一册源码实验手册。部分主题有意重复,因为分卷题库用于系统训练,综合题解用于模拟一题多轮深挖,回答结构和考察角度不同。

flowchart LR
    A[推理基础] --> B[请求生命周期]
    B --> C[调度与资源预算]
    C --> D[KV Cache 与 GPU 执行]
    D --> E[高级优化与分布式]
    E --> F[系统设计与现场推演]
    D --> G[源码实验]
    E --> G

六级题库

分卷题号文章核心范围
Level 11-10推理服务基础Prefill/Decode、在线指标、批处理、采样、并行与基础容量分析
Level 211-20请求生命周期与模块契约HTTP 到 GPU 再到流式返回、IPC、状态所有权、取消与异步边界
Level 321-30调度、准入与资源预算Continuous batching、token budget、chunked prefill、公平性与背压
Level 431-40KV Cache 与 GPU 执行细节Paged KV、Radix Cache、Beam Search、slot mapping、attention backend 与显存
Level 541-50高级优化、分布式与性能诊断投机解码、CUDA Graph、TP/EP、P/D 分离、量化与 benchmark
Level 651-60Staff 级系统设计与现场推演SLO、容量、故障恢复、正确性不变量、扩展点与演进路线

配套长文

阅读与作答方法

  1. 第一遍每题限时 90 秒,按“问题、Input、方法、Output、收益、代价”组织回答。
  2. 第二遍沿源码锚点画对象转换、进程边界和资源 ownership,不看答案复述完整链路。
  3. 第三遍回答追问,必须给出公式、反例或可证伪实验,不能只复述框架术语。
  4. 最后以固定 commit 的源码为准核对类、函数与行为;不要把新旧版本实现混在一个答案中。

本文不是概念名词清单,而是一套基于真实源码控制流的递进式题库。固定参考版本为:

  • vLLM trace commit d1d2f7535,上游基线 3b39fd284
  • SGLang trace commit 9529c2e96,上游基线 a3194d358

每题包含以下部分:

  • 递进追问:用来区分“知道概念”“读过源码”和“能设计生产系统”。
  • 面试官观察点:说明本题真正考察的能力和区分候选人的维度。
  • 源码锚点:回答前应定位的类、函数或本仓库模块笔记。
  • 回答思路与详细答案:按问题、Input、方法、Output、收益和边界组织参考回答。
  • 主问题得分点:按 10 分拆解,既评价结论,也评价因果、源码和验证能力。
  • 追问与答案:给出至少一个高区分度追问、参考答案和独立的 5 分评分点。

VLLM_SGLANG_INTERVIEW_GUIDE.md 保留了 24 道题的长篇版本; 请求、调度、KV、Runner 和投机解码更完整的 Input/Method/Output 分析见 vllm/modulessglang/modules

统一评分尺

同一道题可以问不同级别候选人。建议按下面的深度评分,而不是按记住多少类名评分:

分数回答深度
0-2只会定义术语,或把离线 Transformer forward 当作在线推理系统
3-4能说出主流程和模块名,但说不清 Input/Output、状态所有者和失败路径
5-6能结合源码对象讲清控制流、资源预算和关键状态更新
7-8能解释正确性不变量、性能因果、适用边界,并设计可归因实验
9-10能比较替代设计,量化上界,在并发、故障和分布式条件下完成方案闭环

固定源码版本

  • vLLM trace commit d1d2f7535,上游基线 3b39fd284
  • SGLang trace commit 9529c2e96,上游基线 a3194d358
  • 笔记来源 commit 1f8930ce3
This post is licensed under CC BY 4.0 by the author.

NCCL 进阶面试实验题:20 个细节追问、源码与实测证据

vLLM / SGLang 面试题(一):推理服务基础