Skip to content

JD 知识点拆解

本页速览 把推理部署 JD 里"熟悉 vLLM""了解 CUDA""有量化经验"翻译成可逐项复习的知识点清单。三层能力结构 L1 基础 / L2 主题 / L3 高阶 + 五档自评表,从"没听过"到"能讲透"逐项打分,自动生成属于你自己的补课路线图。

本页含时效性内容,数据截止于 2026-08;引擎版本、性能榜单、产品功能等信息可能已变化,引用前请核对原始出处。

JD 知识点拆解

你拿到一份心仪公司的 JD,上面写着「精通 Python / C++」「熟悉 vLLM 或 TensorRT-LLM」「了解 CUDA 与算子优化」「有量化经验优先」……每一条都看得懂,但每一条又都隔着一层雾:到底要会到什么程度?面试官会怎么考?

本文要做的,就是把 JD 里的"技能词"翻译成一张可逐项复习的知识点清单——不是泛泛的"要学好 CUDA",而是精确到"能写出 GEMM kernel 并解释 bank conflict""能讲清 PagedAttention 解决什么问题、用什么数据结构"这样的具体考点。配合文末的五档自评表L1→L3 补课路线,你可以在一个下午完成对自身能力的"技能体检",然后得到一张属于自己的学习路线图。

拿到 JD ──① 提取技能词──② 映射到考点──③ 五档自评──④ 生成补课清单──⑤ 每周复测
               │              │             │             │
           精通/熟悉/了解   本文第二~六节   本文第七节     本文第八节

本文适合:投递推理引擎工程师、LLM 系统工程师、推理优化工程师、ML Infra / MLOps、算子工程师、端侧推理工程师的候选人,以及所有想把"我好像都会"变成"我能讲透"的学习者。

一、JD 里的技能词到底考什么

JD 不是课程大纲,它是公司对"你能独立产出什么"的最低期待。招聘方的潜台词是:

写"熟悉 vLLM",不是要求你背下 vLLM 全部 API,而是要求你在面对一个新模型上线时,能独立判断它要不要开 PagedAttention、batch 上限设多少、为什么、出问题怎么排查

所以拆解 JD 的第一步,是把技能词映射到"面试官实际会考的能力"。

1. 高频技能词的"真实考点"对照表

JD 原话字面意思面试实际考查(你需要在 5 分钟内证明的)
精通 Python / C++会写两种语言能讲清 Python GIL 与 C++ 多线程差异;能写出一个无内存泄漏的 RAII C++ 类;能用 PyTorch C++ extension 调一个自定义算子
熟悉 PyTorch会用框架训练能讲清 autograd / dispatch / eager vs compile;能解释 torch.compiletorch.export 的差异;能手画 PyTorch forward 计算图
熟悉 vLLM 或 TensorRT-LLM用过推理引擎能讲清 PagedAttention 的 block table 数据结构;能解释 continuous batching 与 in-flight batching 的差异;能定位 TTFT 高的瓶颈
了解 CUDA 与算子优化听说过 CUDA能写出一个简单 reduction kernel;能解释 warp divergence 与 bank conflict;能读懂 Nsight Compute 报告
熟悉量化用过 quantize API能讲清 PTQ vs QAT 路径;能解释 GPTQ / AWQ / SmoothQuant 三者机制差异;能算 INT4 weight-only 量化的显存节省
熟悉分布式推理用过 TP / PP能算 TP 的通信开销;能解释 EP(expert parallel)与 DP 的区别;能讲 PP 的 bubble 比例
有 MLOps / 平台经验上过线能讲清模型版本管理、灰度发布、监控告警、回滚预案;能算成本与 GPU 利用率

2. 为什么不能按字面理解

三个常见误区:

  • 误区一:把 JD 当全表。JD 里 10 条要求,公司心里通常只有 3 条是硬性门槛,其余是"理想候选人画像"。投递前要区分门槛项加分项,优先补门槛项。
  • 误区二:把"熟悉"当成"了解"。面试官写"熟悉 vLLM",考查的是你能讲出原理、动手改源码、说出权衡,而不是"听说过 vLLM"。自评时请用"能讲透"作为"熟悉"的及格线。
  • 误区三:只复习考点,不复习组合拳。面试几乎从来不是单点考:它常给你一个场景("线上 Llama-70B 服务 P99 飙到 8 秒,怎么排查?"),要求你同时动用系统(看监控)+ 引擎(看 vLLM 参数)+ 算子(看 attention kernel)+ 业务(看 prompt 分布)。所以下面三个板块必须连起来看。

3. 从 JD 到补课清单的完整流程

  拿到 JD


  ① 提取技能词(精通 / 熟悉 / 了解 / 加分项)


  ② 映射到三层知识结构(本文第二~六节 L1→L3)


  ③ 逐项五档自评(本文第七节的自评表)


  ④ 生成个人补课清单(本文第八节的方法)


  ⑤ 每周执行 → 复测 → 更新清单

接下来五节就是这张地图的三大板块(L1 / L2 / L3 各拆为若干子节)。

二、L1 基础层:编程、系统、硬件入门

JD 词:「精通 Python / C++」「扎实的工程能力」「了解 GPU 架构」。L1 是所有推理部署岗的底子,不通过这一层,简历在初筛就被筛掉

1. Python 工程级

考点面试怎么考本站对应页
GIL 与多线程"Python 多线程能加速 CPU 推理吗?"术语表
asyncio 异步"vLLM 的 API server 为什么用 asyncio?"模型服务
类型注解 / mypy"怎么给推理引擎写类型安全的接口?"
内存管理"为什么大模型推理要避免 Python 对象频繁创建?"内存与带宽
C 扩展 / PyBind11"你怎么调一个 C++ 算子进 Python?"算子融合

2. C++ 系统级

考点面试怎么考本站对应页
RAII / 智能指针"推理引擎里怎么管理 device buffer 生命周期?"vLLM
模板与编译期"CUTLASS 的 template 体操你看过吗?"GPU 优化原理
多线程 / 互斥"Triton Server 的并发 model instance 怎么实现?"Triton 推理服务
移动语义 / 右值"为什么 vLLM 的 Request 对象要 move 而非 copy?"
构建系统 CMake / Bazel"你怎么 build 一个带 CUDA 的 C++ 项目?"

3. Linux 与性能分析

考点面试怎么考本站对应页
进程 / 线程 / 协程"vLLM 的 worker 与 driver 通信用什么?"vLLM
strace / ltrace / perf"线上推理慢,你怎么定位系统调用瓶颈?"基准测试
Nsight Systems"你用过 nsys 吗?能讲一个 trace 故事吗?"GPU 优化原理
Nsight Compute"ncu 报告里你看哪几个指标?"算子融合
PyTorch Profiler"你怎么用 torch.profiler 看 forward 的瓶颈?"调优实践

4. 网络与协议

考点面试怎么考本站对应页
TCP / HTTP / gRPC"Triton Server 用 gRPC 而非 HTTP,为什么?"Triton 推理服务
RDMA / NCCL"TP 通信走 PCIe 还是 NVLink,怎么测?"分布式推理
WebSocket / SSE"LLM 流式输出用什么协议?"模型服务

5. GPU 硬件入门

考点面试怎么考本站对应页
SIMT 模型"GPU 的 thread / block / grid 怎么映射?"硬件入门
显存层次"shared memory / L1 / L2 / HBM 的延迟差多少?"内存与带宽
Tensor Core"Tensor Core 与 CUDA Core 的差异?"GPU 优化原理
H100 vs A100"H100 关键升级是什么?FP8 / TMA 怎么影响推理?"硬件入门
NVLink / NVSwitch"为什么 TP 在 8 卡内快、跨节点慢?"分布式推理

L1 的"假熟悉"陷阱

"会用 Python"和"能讲 GIL"是两回事。L1 层最容易出现"会用不会讲"的假熟悉,因为日常调包就够用了。面试会直击你最弱的点:你以为 Python 熟,结果被问 GIL 与 asyncio 的关系就答不上来。自评时按"能讲透"打分,别按"用过"打分。

三、L2 主题层:推理引擎、量化、调度

JD 词:「熟悉 vLLM 或 TensorRT-LLM」「有量化经验」「熟悉 KV cache 与 batching」。L2 是面试的必考主线,也是推理部署岗与传统 ML 岗的最大差异所在。

1. 推理引擎机制

考点面试怎么考本站对应页
vLLM 整体架构"画出 vLLM 的 LLMEngine / Scheduler / Executor 三层关系"vLLM
PagedAttention"block table 是什么数据结构?为什么解决碎片?"批处理与调度
Continuous batching"和 static batching 比,吞吐提升来自哪?"批处理与调度
TensorRT-LLM In-Flight Batching"和 vLLM continuous batching 有何区别?"TensorRT-LLM
Chunked Prefill"为什么把长 prompt 分块?"vLLM
Speculative Decoding"Medusa / EAGLE 的差异?什么时候不该用?"投机解码
Prefix Caching"重复 prompt 怎么省 KV cache 重算?"vLLM

2. KV Cache 与显存管理

考点面试怎么考本站对应页
KV cache 大小计算"Llama-70B、batch=8、seq=2048,KV cache 多大?"内存与带宽
KV cache 量化"INT8 KV cache 省多少显存?精度损失呢?"量化
PagedAttention 数据结构"block_size 怎么选?物理块怎么分配?"批处理与调度
Multi-Query / Grouped-Query Attention"MQA / GQA 怎么省 KV cache?"vLLM
Ring / Paged Attention 跨节点"PP + KV cache 怎么协调?"分布式推理

3. 量化与压缩

考点面试怎么考本站对应页
PTQ vs QAT"PTQ 掉点怎么办?什么时候上 QAT?"量化
GPTQ / AWQ / SmoothQuant"三者机制差异?分别适合什么模型?"量化
Weight-only vs Weight+Activation"LLM 推理为什么主推 weight-only?"权重-激活混合精度
INT4 / INT8 / FP8"H100 上 FP8 vs INT8 谁快?为什么?"量化
KV cache 量化"KV cache INT8 量化的精度损失来源?"量化
剪枝与蒸馏"LLM 推理岗为什么很少讲剪枝?"剪枝蒸馏

4. Batching 与调度

考点面试怎么考本站对应页
Static batching"为什么 static batching 在 LLM 上吞吐低?"批处理与调度
Continuous batching"调度器怎么决定何时换入换出请求?"批处理与调度
In-Flight Batching"TensorRT-LLM 的 in-flight 与 vLLM 的 continuous 有何区别?"TensorRT-LLM
Prefill / Decode 分离"为什么要分离?分离后通信开销?"分布式推理
优先级调度"VIP 用户请求怎么调度才不影响普通用户?"模型服务

5. 服务与编排

考点面试怎么考本站对应页
Triton Server model repository"怎么配一个多版本灰度的 model repository?"Triton 推理服务
FastAPI / asyncio 服务化"vLLM 的 OpenAI 兼容 server 怎么实现流式?"模型服务
K8s 部署与扩缩容"怎么根据 QPS 自动扩 vLLM 副本?"模型服务
灰度与回滚"推理模型上线怎么做 5% 灰度?"模型服务
监控指标"TTFT / TPOT / queue length 怎么打点?"基准测试

L2 的复习策略

L2 的考点都对应到"开源项目源码 + 论文 + 实测"三件套。最有效的复习是:挑一个引擎(推荐 vLLM)精读源码 + 跑一次 benchmark + 改一个参数看效果。三步走完,所有 L2 题都能讲出"我做过的"而不是"我看过的"。具体见基准测试调优实践

四、L3 高阶层:算子、图、分布式、端侧

JD 词:「了解算子优化」「熟悉分布式推理」「有端侧部署经验优先」。L3 是面试的"加分项 / 区分项",进入这一层意味着你已通过 L1/L2 的初筛,正在被用来区分"会用 vs 会改"

1. 算子开发

考点面试怎么考本站对应页
FlashAttention 原理"FlashAttention-1/2/3 各做了什么?"算子融合
CUDA kernel 编写"手写一个 reduction kernel"GPU 优化原理
Triton DSL"Triton 相比 CUDA 的优势?什么场景该用?"算子融合
算子融合策略"Linear + ReLU 融合前后 launch 开销怎么算?"算子融合
Tensor Core / WGMMA"Hopper 上 wgmma 指令与 mma 指令差异?"GPU 优化原理
TMA(Tensor Memory Accelerator)"TMA 解决什么问题?为什么 H100 推理快?"硬件入门
Bank conflict / coalesced access"shared memory bank 怎么避免冲突?"GPU 优化原理
CUDA Graph"为什么 LLM 推理要捕获 CUDA Graph?"图优化

2. 图优化与编译

考点面试怎么考本站对应页
算子融合"Conv + BN + ReLU 融合后省了什么?"图优化
常量折叠 / 死代码消除"torch.compile 的 constant folding 做什么?"图优化
torch.compile / Inductor"torch.compile 在推理时与 eager 差多少?为什么?"图优化
AOT vs JIT"TensorRT 是 AOT、PyTorch eager 是 JIT,含义?"图优化
ONNX / TorchScript / Export"torch.export 相比 TorchScript 好在哪?"图优化
MLIR / XLA / TVM"编译器后端在推理引擎里的位置?"图优化

3. 分布式推理

考点面试怎么考本站对应页
Tensor Parallel"TP 切权重,通信开销怎么算?"分布式推理
Pipeline Parallel"PP 的 bubble 比例怎么算?"分布式推理
Expert Parallel (MoE)"EP 与 DP 的区别?MoE 推理为什么用 EP?"分布式推理
Disaggregated Prefill / Decode"为什么要分离?跨节点 KV cache 怎么传?"分布式推理
Multi-node 推理"跨节点 TP 为什么慢?NVSwitch 与以太网的差异?"分布式推理
Ring Attention"Ring Attention 解决长上下文的什么问题?"分布式推理

4. 端侧推理

考点面试怎么考本站对应页
llama.cpp / ggml"llama.cpp 为什么能在 M1 上跑 70B?"llama.cpp
MLC-LLM / Apache TVM"MLC 编译路径与 llama.cpp 的差异?"移动端部署
ARM NEON / SVE"ARM CPU 推理优化靠什么?"移动端部署
Apple Metal / ANE"iPhone 上 LLM 走 Metal 还是 ANE?"移动端部署
WebGPU / Vulkan"浏览器里跑 LLM,瓶颈在哪?"移动端部署
INT4 group-wise 量化"为什么端侧主推 INT4 group-wise?"量化

5. 性能指标与基准

考点面试怎么考本站对应页
TTFT / TPOT 定义"TTFT 与 TPOT 的物理含义?"延迟与吞吐
Compute-bound vs Memory-bound"怎么判断 LLM 推理当前是哪种?"Roofline 模型
Roofline 模型"怎么用 Roofline 算理论上限?"Roofline 模型
HBM 带宽"Llama-70B 推理是 memory-bound,为什么?"内存与带宽
Benchmark 方法论"怎么写一个公平的 LLM 推理 benchmark?"基准测试
预热与统计"为什么要预热?怎么取 P50/P99?"基准测试

五、JD 关键词 → 本站页面 大对照表

把上面四节汇总成一张可打印的对照表,作为"看 JD → 找页面"的入口:

JD 关键词真实考点本站对应页L1 / L2 / L3
Python / C++GIL、RAII、模板、PyBind11术语表vLLML1
Linux / 性能分析nsys / ncu / perf / PyTorch Profiler基准测试L1
网络 / gRPCTCP / HTTP / gRPC / RDMA / NCCLTriton 推理服务L1
GPU 架构SIMT / Tensor Core / HBM / NVLink硬件入门L1
vLLM架构 / PagedAttention / Continuous batchingvLLML2
TensorRT-LLMIn-Flight Batching / Plugin / FP8TensorRT-LLML2
量化GPTQ / AWQ / SmoothQuant / INT4 / INT8 / FP8量化权重-激活混合精度L2
KV cache大小计算 / PagedAttention / MQA / GQA批处理与调度内存与带宽L2
BatchingContinuous / In-Flight / Prefill-Decode 分离批处理与调度L2
服务化Triton / FastAPI / K8s / 灰度Triton 推理服务模型服务L2
CUDAkernel / SIMT / bank conflict / Tensor CoreGPU 优化原理L3
Triton DSL写 attention / quantization kernel算子融合L3
FlashAttentionFA1/2/3 / tiling / recompute算子融合L3
CUDA Graph捕获与重放 / launch overhead图优化L3
图优化算子融合 / 常量折叠 / torch.compile图优化L3
分布式推理TP / PP / EP / Disaggregated分布式推理L3
投机解码Medusa / EAGLE / 接受率投机解码L3
端侧推理llama.cpp / MLC / Metal / WebGPUllama.cpp移动端部署L3
性能指标TTFT / TPOT / Roofline / HBM 带宽延迟与吞吐Roofline 模型L3

怎么用这张表

按 JD 关键词逐行查"本站对应页",把"会 / 不会 / 半会不会"标在每个页面名后,就得到了你的补课清单入口。不要试图把整张表都补满——只补"硬性要求 + 加分项中你差一两档"的部分。

六、学习优先级建议

按"投入产出比 + 岗位匹配度"两个维度排优先级:

第 1 优先级  L1 Python / C++ / Linux / 性能分析
              地基,所有推理岗位的硬门槛
              投入:持续,每周 5–10 小时长期维持

第 2 优先级  L2 推理引擎(vLLM / TensorRT-LLM)+ KV cache + batching
              LLM 推理岗面试主线
              投入:2–4 周,源码精读 + 实测

第 3 优先级  L2 量化 + 服务化
              所有部署岗的标配
              投入:1–2 周,做对比实验

第 4 优先级  L3 算子开发(CUDA / Triton)+ 图优化
              引擎 / 优化 / 算子岗的加分项
              投入:3–6 周持续,从 reduction 起步

第 5 优先级  L3 分布式推理 + 端侧推理 + 投机解码
              岗位特定加分项,按目标岗位补
              投入:1–2 周,看论文 + 跑 demo

时间分配的"硬约束"

L1 永远是优先级 1,任何岗位的硬性门槛都包含 Python + Linux,不能跳过。L2 是优先级 2,因为 LLM 推理岗在 2026 年占推理部署岗的 70%+。L3 按目标岗位定制——投引擎岗补算子 + 图优化,投系统岗补服务化 + K8s,投端侧岗补 llama.cpp + 量化。详见求职冲刺线的"岗位类型 → 学习路径"映射。

七、自评表:五档自评,可打印

把前面四节的考点汇总成一张可打印的自评表。打分标准

档位含义判定标准(对着镜子给自己打分)
1 没听过完全陌生这个词都没见过
2 听说过有点印象见过/听过,但讲不出定义
3 了解知道概念能给出定义和一个例子,但说不出原理与权衡
4 熟悉能动手用能独立实现 / 调参 / 排查,知道优缺点与适用场景
5 能讲透能教别人能在 5 分钟内讲清原理 + 推导 + 权衡 + 反例,经得起追问

打印与勾选方法

把本节打印出来,按板块逐行打勾,勾选你当前真实水平对应的档位。诚实是前提——目标是把"能讲透"以下的行全部暴露出来,而不是让表看起来好看。建议每行只勾一档,拿不准时往低一档勾。

板块 A:L1 基础层

考点没听过听说过了解熟悉能讲透
Python GIL / asyncio
C++ RAII / 智能指针 / 模板
Linux 性能分析(perf / nsys)
Nsight Compute 报告解读
PyTorch Profiler
TCP / gRPC / HTTP 区别
RDMA / NCCL 通信
GPU SIMT / 显存层次
Tensor Core / TMA
H100 vs A100 关键差异

板块 B:L2 推理引擎与调度

考点没听过听说过了解熟悉能讲透
vLLM 架构 / Scheduler
PagedAttention block table
Continuous batching
In-Flight Batching (TRT-LLM)
Chunked Prefill
Prefix caching
KV cache 大小计算
KV cache 量化
MQA / GQA
Triton Server model repository
K8s 部署与扩缩容
灰度发布与回滚
TTFT / TPOT 监控

板块 C:L2 量化与压缩

考点没听过听说过了解熟悉能讲透
PTQ vs QAT
GPTQ / AWQ / SmoothQuant
Weight-only vs Weight+Activation
INT4 / INT8 / FP8 选型
算子融合 / 图优化概念
剪枝 / 蒸馏在 LLM 上的局限

板块 D:L3 算子与图

考点没听过听说过了解熟悉能讲透
FlashAttention-1/2/3 原理
CUDA kernel reduction 手写
Triton DSL 写 attention
算子融合策略
Tensor Core / WGMMA / TMA
Bank conflict / coalesced
CUDA Graph 捕获
torch.compile / Inductor
AOT vs JIT 编译

板块 E:L3 分布式与端侧

考点没听过听说过了解熟悉能讲透
Tensor Parallel 通信开销
Pipeline Parallel bubble
Expert Parallel (MoE)
Disaggregated Prefill/Decode
Ring Attention
llama.cpp / ggml
MLC-LLM / TVM
ARM NEON / Apple Metal
WebGPU / Vulkan
投机解码(Medusa / EAGLE)
Roofline 模型
HBM 带宽与 memory-bound

八、生成个人补课清单的方法

自评表打完之后,用下面四步把它变成一张可执行的周计划

第一步:按档位归类

把每个考点归入三类:

  • A 类(档位 1~2,完全陌生):优先级最高,先解决"它是什么"。目标:一周内升到 3。
  • B 类(档位 3,了解):缺的是原理与权衡。目标:两周内升到 4,标准是"能独立实现 + 说出适用场景"。
  • C 类(档位 4,熟悉):缺的是"讲透"能力。目标:把每个考点写成一篇 5 分钟口头讲稿。这部分直接对应面试表现。

档位 5 的考点不用再花时间,除非你投的是偏教学或偏理论的岗位。

第二步:按板块排序,算总账

把 A、B、C 三类按板块汇总,得到三张"欠账表"。补课顺序建议:

第 1 优先级  板块 A L1 基础     —— 它是所有其他板块的地基
第 2 优先级  板块 B L2 引擎调度 —— LLM 推理岗面试主线,投入产出比最高
第 3 优先级  板块 C L2 量化      —— 几乎所有部署岗必备
第 4 优先级  板块 D L3 算子图    —— 若目标岗位是引擎 / 优化 / 算子
第 5 优先级  板块 E L3 分布式端侧 —— 按目标岗位补

第三步:套用"补课清单"模板

周次重点板块A 类任务(升到 3)B 类任务(升到 4)C 类任务(产出讲稿)产出物
第 1 周L1 基础3 个陌生考点2 个考点补原理1 篇讲稿(如 GIL)笔记 + 讲稿
第 2 周L2 引擎 + KV cache2 个陌生考点3 个考点补原理2 篇讲稿(如 PagedAttention、continuous batching)源码笔记 + 讲稿
第 3 周L2 量化 + 服务化1 个陌生考点2 个考点补原理2 篇讲稿(如 GPTQ vs AWQ、TTFT/TPOT)对比实验 + 讲稿
第 4 周L3 算子 / 分布式1 个陌生考点2 个考点补原理2 篇讲稿(如 FlashAttention、TP)手写 kernel + 讲稿
第 5 周起循环直到 A/B 清零动态调整动态调整向"组合拳"题推进模拟面试录音

第四步:三个执行原则

  • 原则一:讲得出来才算会。每个考点复习完,用手机录一段 5 分钟自讲,回听找出"卡壳处"——卡壳处就是没懂的地方。
  • 原则二:源码 + 实测 > 看文档。推理引擎类考点务必自己跑一次 vLLM、改一次参数、看一次 Nsight——"看过文档"和"跑过实测"在面试里是两回事。
  • 原则三:每周复测。周日晚上用自评表重新打分,把"升档"的考点从清单划掉,把"原地踏步"的考点标注出来并追问原因——通常不是不够努力,而是复习方式不对(比如只看不练)。

补充一句

补课清单的目标不是"把表涂满",而是把目标岗位 JD 里的门槛项全部升到 4 档以上。岗位不需要的板块(比如做引擎岗,端侧推理不必强求 5 档),卡在 4 档即可,把时间投到刀刃上。

九、延伸阅读

站内联动:

参考资料(真实资源):