# 1. LLM 推理核心算子,GEMM、Attention(FlashAttention 系列)、RMSNorm、RoPE、KV Cache 的 GPU 实现原理如何? A GEMM 与 FlashAttention 是性能关键算子,分别用 Tensor Core 与分块 IO 优化实现 ✓ 正确答案 B KV Cache 是重复计算历史 K/V,与注意力无关 C RoPE 是逐元素规约算子 D RMSNorm 是计算密集算子,需用 Tensor Core
# 2. FlashAttention-2/-3 的工程优化,tiling、recomputation、warp specialization 如何将 Attention 复杂度逼近理论下限? A tiling 只优化计算,不优化 IO B recomputation 会显著增加 HBM 读写 C FlashAttention-2 去掉了在线 softmax D warp specialization 让不同 warp 分别做数据加载与矩阵乘,实现流水线重叠 ✓ 正确答案
# 3. AI 算子库(cuBLAS/cuDNN/oneDNN)与编译器(XLA/TVM/Triton)的边界,手写 kernel 何时必要? A 编译器无法做算子融合 B 算子库不能用于矩阵乘 C 算子库优化单个算子性能,编译器做算子间融合与代码生成,手写 kernel 在需极致性能或自定义算子时必要 ✓ 正确答案 D 手写 kernel 永远比算子库更快
# 4. vLLM 的 PagedAttention 如何用块表(block table)管理 KV Cache,为什么能减少显存碎片并支持连续批处理? A 块表把请求的 KV 逻辑块映射到物理块,按需分配,减少显存碎片并支持连续批处理 ✓ 正确答案 B 块表会增大显存碎片 C PagedAttention 仍按请求固定长度预留显存 D 块表无法支持请求动态释放
# 5. PyTorch 2.0+ 的 torch.compile / TorchInductor / Triton 编译栈,图捕获、算子融合、自动调优的工程价值如何? A TorchInductor 无法自动调优 B torch.compile 只支持 CPU,不支持 GPU C 算子融合会增加 kernel launch 次数 D TorchInductor 在 GPU 上生成 Triton kernel,通过图捕获、算子融合与自动调优降低开销提升性能 ✓ 正确答案
# 6. TensorRT-LLM、vLLM、SGLang 的核心加速技术对比,KV cache 压缩、Continuous Batching、Speculative Decoding 有何差异? A Speculative Decoding 会显著增加解码步数 B Continuous Batching 只降低单请求延迟 C KV cache 压缩减少显存与带宽,连续批处理提升吞吐,推测解码减少解码步数 ✓ 正确答案 D 各框架技术完全一致,无差异
# 7. FlashAttention 的 IO 优化思想(分块、在线 softmax)对算子优化的启发? A IO 优化对 memory-bound 算子毫无意义 B 在线 softmax 需要完整的 S 矩阵才能计算 C 分块会增大 HBM 读写 D 分块与在线 softmax 让中间结果不落盘,启发算子优化应优先减少 HBM 往返而非单纯减少 FLOP ✓ 正确答案
# 8. 算子融合(fused kernel)如何减少 kernel launch 与显存往返,典型融合案例? A 融合会强制写入中间张量 B 融合会增加 kernel launch 次数 C 融合把多个算子合并为单个 kernel,减少 kernel launch 与中间张量的显存往返 ✓ 正确答案 D 融合只适用于 CPU,不适用于 GPU
# 9. AI 算子的融合,FlashAttention、算子融合与访存优化如何结合? A FlashAttention 不涉及访存优化 B 融合会增加中间张量的 HBM 访问 C 访存优化与融合无关 D 融合把中间结果留在片上减少 HBM 往返,FlashAttention 融合 QK^T/softmax/PV 即典型 ✓ 正确答案
# 10. 卷积/矩阵乘的访存优化,tiling 与寄存器分块如何实施? A tiling 在块级复用数据减少 HBM 访问,寄存器分块在线程内复用减少共享内存访问 ✓ 正确答案 B tiling 会增大 HBM 访问次数 C 寄存器分块无法减少内存访问 D 访存优化对矩阵乘无意义
# 11. FP8/INT8 量化算子的推理实现,反量化(dequant)与 GEMM 如何融合,量化误差对注意力输出有何影响? A 反量化必须用独立 kernel,不能融合 B dequant 与 GEMM 融合可减少内存往返,注意力对量化误差敏感需谨慎处理精度 ✓ 正确答案 C 量化误差对注意力输出无影响 D 累加器精度必须低于激活精度
# 12. 推测解码(speculative decoding)如何用草稿模型并行验证多个 token,加速比与接受率的数学关系? A 目标模型仍逐位置串行生成候选 B 草稿模型快速生成候选 token,目标模型并行验证,加速比随接受率提高而增大 ✓ 正确答案 C 接受率越高加速比越低 D 推测解码不减少解码步数
# 13. Triton-Inductor、Pallas(JAX)、MLIR 等编译器的中间表示(IR)设计与跨硬件可移植性? A 高抽象 IR 性能控制力最强 B IR 抽象层次与可移植性无关 C IR 抽象层次越高越易跨硬件移植但控制力弱,MLIR 用多级 IR 平衡可移植性与性能表达 ✓ 正确答案 D MLIR 只能用于单硬件
# 14. Triton 的编程模型与 CUDA 的差异,自动调优(autotune)如何工作? A Triton 以块为单位自动管理线程与内存,autotune 通过基准测试自动选择最优配置 ✓ 正确答案 B Triton 需要手动管理共享内存与线程 C autotune 只在编译期选择一次配置且不缓存 D Triton 无法跨硬件移植
# 15. AI 编译器(TVM/MLIR)如何做计算图优化与代码生成? A 图优化与代码生成互不相干 B 图优化只处理硬件指令 C 代码生成不涉及循环调度 D 图优化做算子融合/布局/内存规划,代码生成把图降为硬件代码,二者配合提升性能 ✓ 正确答案
# 16. TVM/MLIR 的图优化,算子融合与布局转换如何实施? A 算子融合减少中间张量写回与 launch,布局转换把数据转换为对硬件更高效的布局 ✓ 正确答案 B 算子融合会强制增加中间张量 C 布局转换永远不会带来额外代价 D 图优化不涉及数据布局
# 17. FlashAttention 的分块与 IO 优化原理? A 分块不减少 HBM 读写 B FlashAttention 需要把整个 S 矩阵写回 HBM C 在线 softmax 无法在分块下工作 D 分块把数据块放片上计算,在线 softmax 在分块中增量更新,使 HBM 读写从 O(N²) 降到 O(N) ✓ 正确答案
# 18. AI 编译器的调度,内存规划与 kernel 生成如何衔接? A 调度只影响正确性,不影响性能 B 内存规划与显存占用无关 C kernel 生成不涉及循环变换 D 调度做循环变换,内存规划决定缓冲区复用与分配,kernel 生成把算子翻译为设备代码 ✓ 正确答案