大模型算力优化面试深挖 15 题
涵盖显存碎片治理、PagedAttention、张量并行、投机解码与低精度量化实战。
题目为高频真实问法;①②③ 三层答案为模拟示范,非真实面经
① 简历常见平淡回答
「模型每生成一个词就要存下之前的 KV 缓存,用 vLLM 可以把显存管理得更好,减少浪费。」
仅停留在工具表层,未讲清自回归生成阶段显存静态预分配导致的内部碎片、动态扩展导致的外部碎片,以及类比虚拟内存分页寻址的物理机制。
② 面试官追问逻辑
③ 深挖后可量化的高分示范
KV Cache 随序列长度与并发请求线性膨胀,传统静态连续显存预分配会带来高达 60% 到 80% 的内存碎片。PagedAttention 借鉴操作系统虚拟内存分页思想:将 KV Cache 切分为固定大小的物理块(Block),每个物理块容纳固定 Token 数(如 16 个);通过维护逻辑块到非连续物理块的映射表(Block Table),实现显存的动态按需分配与按块释放;更利用写时复制(Copy-on-Write)技术支持高并发下共享前缀(Prompt Sharing)的零开销内存复用。
① 简历常见平淡回答
「首字慢就加 GPU 卡,解码慢就减小 batch size,或者把模型的参数量压缩一下。」
未区分预填充阶段(Prefill/Prompt 阶段,算力受限 Compute-bound)与解码生成阶段(Decode 阶段,显存带宽受限 Memory-bound)的本质物理约束差异。
② 面试官追问逻辑
③ 深挖后可量化的高分示范
TTFT 与 TPOT 对应完全不同的计算边界。Prefill 阶段由于并行计算全部输入 Token,属于算力密集型(Compute-bound),优化核心在于使用 FlashAttention 融合 Kernel 提高 Tensor Core 利用率,并采用 Chunked Prefill 将超长 Prompt 分片交错融入批处理;Decode 阶段每步仅生成单 Token,属于访存密集型(Memory-bound,受制于 HBM 带宽),优化核心在于提高 Batch Size 摊薄权重搬运成本、推行投机采样(Speculative Decoding)或使用 FP8/INT4 量化降低字节传输量。
① 简历常见平淡回答
「FlashAttention 就是一个加速 Attention 计算的 CUDA 算子,把计算速度提升了好几倍。」
忽视了现代 GPU 内存层级物理特性,未讲清通过平铺分块(Tiling)、在线 Softmax 计算(Online Softmax)避免向高延迟 HBM 频繁写入大矩阵的核心设计。
② 面试官追问逻辑
③ 深挖后可量化的高分示范
标准 Attention 必须将中间的 N×N 注意力矩阵完整物化写入高延迟、低带宽的 HBM 显存,导致大量显存读写瓶颈。FlashAttention 的突破在于「Tiling 分块与在线 Softmax」:将 Q、K、V 矩阵分块加载至片上高速 SRAM(容量几十 KB 但带宽超 10TB/s);利用数学技巧在分块计算时维护局部最大值与归一化因子,实现流式累加在线更新 Softmax,完全无需将 N×N 矩阵回写 HBM;FA2/FA3 进一步优化线程块并行与利用 Hopper 架构 TMA 异步数据搬运,逼近硬件算力天花板。
① 简历常见平淡回答
「先用一个小模型飞快生成几个词,再让大模型看一眼对不对,对的话就直接要,不对就重新生成。」
停留在概念描述,未讲清前向验证时的树状注意力掩码(Tree Attention)、拒绝采样判决标准以及小模型选择对端到端吞吐的数学期望。
② 面试官追问逻辑
③ 深挖后可量化的高分示范
投机解码的核心在于「以小模型的廉价生成换取大模型的并行验证」。推理引擎维护一个小草稿模型(Draft Model)与大目标模型(Target Model):草稿模型以极高吞吐自回归预测 K 个候选 Token;目标模型将当前上下文与 K 个候选 Token 打包为单次前向传播,通过 Tree Attention 并行计算验证;采用改进的拒绝采样概率准则确定接受长度:若前 M 个 Token 被接受,则一步完成 M+1 个词的输出;由于单次验证耗时几乎等同于单次解码,当接受率维持在 70% 以上时,推理延迟降低 2 到 3 倍。
① 简历常见平淡回答
「把 16 位的浮点数转成 8 位或者 4 位整数来存,显存省一半,速度也变快了,只要精度掉得不多就行。」
忽略了量化最大的挑战是激活值中少数不可忽略的绝对离群点(Outliers),未讲清权重量化(W4A16)与全量化(W8A8/W4A4)在硬件执行层面的核心区别。
② 面试官追问逻辑
③ 深挖后可量化的高分示范
量化精度衰退的根源在于激活张量中存在极少但幅值巨大的「离群特征通道」。GPTQ 属于权重量化(W4A16),基于二阶海森矩阵(Hessian)逐行更新未量化权重以补偿量化误差;AWQ 洞察到并非所有权重都同等重要,通过观察激活值分布保留 1% 最显著权重维持 FP16,仅量化其余非关键权重;SmoothQuant 则是真正的 W8A8 全量化先驱,提出数学等价变换:在矩阵乘法前通过逐通道缩放因子(Scaling Factor)将激活值的离群峰值平滑平摊迁移至权重张量中,彻底解决了硬件 INT8 Tensor Core 的全量化加速瓶颈。
① 简历常见平淡回答
「模型太大一张卡放不下,就把层与层切开放到不同卡上,或者把每一层的矩阵拆成两半并行算。」
缺乏对 Megatron-LM 经典张量切分细节(行切分 vs 列切分、All-Reduce 插入点)以及流水线气泡(Bubble)消除策略的工程深度。
② 面试官追问逻辑
③ 深挖后可量化的高分示范
TP 与 PP 对应完全不同的通信拓扑与时延边界。张量并行(TP)在单层算子内部切分:在 MLP 层,第一层权重按列切分,第二层权重按行切分,在单层计算完毕后仅需执行一次 All-Reduce 通信同步,由于高频通信必须局限在 NVLink 高速卡间网络;流水线并行(PP)则按层切分模型到不同 GPU,由于存在前向反向依赖会产生严重计算气泡,推理阶段通常采用 1F1B 调度结合连续微批(Micro-batching)填充气泡。通常在单节点 8 卡内部拉满 TP,跨机节点间采用 PP 或数据并行(DP)。
① 简历常见平淡回答
「把算力好的机器用来跑输入,算力差的机器跑输出,中间用高速网络把数据传过去。」
缺乏对传统混合调度中长 Prompt 霸占算力引发 TPOT 剧烈抖动的本质痛点分析,缺少跨节点 RDMA 传输 KV Cache 的架构设计方案。
② 面试官追问逻辑
③ 深挖后可量化的高分示范
PD 混合部署会导致「计算密集与访存密集在同张卡上互踩干扰」。PD 分离架构将集群解耦为两类专属节点池:Prefill 节点池专注于大 Batch 高吞吐处理上下文输入,算力利用率拉满;生成首字后,系统通过高速网络(基于 RDMA / RoCEv2)将完整的中间 KV Cache 直接零拷贝内存传输至 Decode 节点池;Decode 节点池专职负责小增量自回归迭代,确保 TPOT 极度平稳且无抖动。实测该架构可使系统综合吞吐量提升 2 倍以上,P99 延迟降低 60%。
① 简历常见平淡回答
「把常用的系统提示词或者长文档的向量存起来,用户提问如果前缀一样就不用重新计算了。」
仅把前缀缓存理解为静态哈希匹配,未讲清多租户树状 Radix Tree 索引管理、动态引用计数、LRU 显存淘汰与跨节点缓存感知的分布式路由。
② 面试官追问逻辑
③ 深挖后可量化的高分示范
前缀缓存是解决 Agent 长 Prompt 重复开销的核武器。在推理引擎内部(如 SGLang / vLLM),基于 Radix Tree(基数树)管理历史所有已计算请求的 Token 序列与物理 KV Cache 块映射:当新请求到达时,网关在基数树中执行最长前缀匹配,命中部分(如固定的数十页系统说明或Few-shot示例)直接复用显存物理块,仅对增量差异 Token 触发 Prefill 计算;配合调度器推行「缓存感知路由(Cache-aware Routing)」,将相似前缀请求优先哈希调度到同一台物理 GPU 机器,使全局 Prefill 算力开销直降 70%。
① 简历常见平淡回答
「部署 K8s 集群,装好 GPU Operator,在 yaml 声明请求 8 张卡。」
常规 K8s 调度器缺乏对 NVLink NUMA 拓扑亲和性的感知,极易调度跨 NUMA 节点或跨非对称总线的 GPU 组合导致 TP 通信带宽腰斩。
② 面试官追问逻辑
③ 深挖后可量化的高分示范
大模型分布式推理对硬件互联拓扑极度敏感。我们在 Kubernetes 控制面引入增强调度器(如 Volcano 或 Kueue)结合 NVIDIA MIG / NFD(Node Feature Discovery):首先在调度时实施 GPU 拓扑感知(Topology-Aware Scheduling),确保同一个 Tensor Parallel Pod 分配到的 8 张 GPU 均处于同一 NUMA 节点并通过高速 NVLink 全互联,杜绝跨 PCIe 交换机产生的通信断崖;其次接入 KEDA 基于显存剩余容量与推理队列实时排队长度做精准 HPA 自动水平扩缩容;最后利用容器镜像本地只读缓存(P2P 镜像分发)将冷启动拉镜像时间从 10 分钟压缩至 40 秒。
① 简历常见平淡回答
「直接把模型的 max_tokens 改大,把服务器内存加满,用更大显存的 H100 显卡去跑。」
忽视了注意力计算的二次方时间与显存复杂度(O(N^2)),缺乏对稀疏注意力、序列并行(Sequence Parallelism)与上下文压缩的架构思考。
② 面试官追问逻辑
③ 深挖后可量化的高分示范
支持 128K 超长上下文必须打出「算法削减、并行切分与存储分级」组合拳。算法层面:采用稀疏注意力(Sparse Attention)或保留局部关键 Token 的动态剪枝策略(如 StreamingLLM 保护初始 Attention Sink 与局部滑动窗口),打破二次方计算壁垒;并行层面:推行序列并行(Sequence Parallelism,如 RingAttention / DeepSpeed-Ulysses),将超长输入序列按序列维度切片切分至环形拓扑多卡,各卡并行计算 Attention 并异步传递 KV 数据,彻底攻克单卡显存装不下的物理难题;同时在数值稳定性上配合 RoPE 位置编码基频动态外推(NTK-aware Scaling)。
① 简历常见平淡回答
「在 Grafana 里面看 GPU 使用率和显存占用,用 Prometheus 收集接口的 QPS 和平均响应时间。」
传统指标无法反映 LLM 独特的首字延迟(TTFT)、单 Token 耗时(TPOT)、KV Cache 显存利用率及排队时长等核心业务指标。
② 面试官追问逻辑
③ 深挖后可量化的高分示范
LLM APM 必须采集「大模型专属黄金指标群」。监控指标分为三层:硬件层采集 GPU 功耗、SM 核心利用率、显存带宽利用率与 PCIe/NVLink 吞吐;推理引擎层实时暴露核心运行态指标:KV Cache 显存分配百分比(Cache Usage %)、当前并发请求数、调度器排队延迟(Waiting Queue Time)、首字响应耗时(TTFT 分布)、每 Token 生成耗时(TPOT P50/P90/P99)以及 Chunked Prefill 抢占计数;业务网关层关联真实输出 Token 计数与模型成本折算,在大屏端实现故障分钟级精准定界(是算力打满、带宽瓶颈还是网络长尾)。
① 简历常见平淡回答
「立刻重启报错的 Docker 容器,在群里让业务部门控制流量少调接口,把挂掉的机器拉起来。」
盲目重启无法消除并发洪峰,新容器启动后会被排队流量再次瞬间击穿打崩溃,缺乏生产级自愈降级与流量梯级引流控制手段。
② 面试官追问逻辑
③ 深挖后可量化的高分示范
突发 OOM 事故必须采取「先止血排载、再熔断限流、后隔离自愈」。第一步阻断洪峰:网关层立刻启动基于排队等待时间的熔断机制,对溢出请求直接返回带重试建议的标准 HTTP 429,阻断新流量继续灌入显存;第二步调度止血:推理引擎层暂停接纳新 Prefill 请求,强制将当前存量正在生成的长文本连接平稳输出或降级截断,避免正在生成的请求全盘皆输;第三步排查根因:从追踪平台捞出触发 OOM 的前置请求特征(排查是否突发了超长 Prompt 绕过了前置长度校验);修复网关校验规则后,逐批解除熔断灰度放量。
① 简历常见平淡回答
「直接跟领导算算闭源 API 有多贵,告诉业务部门自研开源模型才能保证数据安全,逼他们必须用。」
只谈安全与政治正确无法解决业务的实际体验痛点,缺乏用数据量化诊断、对齐真实 SLA 以及通过专项工程攻坚提升体验的专业说服力。
② 面试官追问逻辑
③ 深挖后可量化的高分示范
解决业务质疑必须「以数据对齐预期,以专项性能攻坚重建信心」。首先不搞行政命令,而是建立端到端对比评测:调取业务真实流量,用标准化脚本同台对比闭源商用 API 与自研集群的 TTFT、TPOT 与可用性曲线,客观找出自研服务的具体瓶颈(如缺乏前缀缓存导致高频知识库查询慢);随后立项一周冲刺:推行 vLLM 最新版本接入、启用 Chunked Prefill 与 FP8 量化加速,将自研服务 P90 延迟降低 50% 并优于公有云平均水平;最后出具包含数据合规、专网低延迟与单 Token 成本节约 80% 的商业综合报告,用过硬的工程战果赢得业务信赖。
① 简历常见平淡回答
「要求算法团队把非标算子改回 PyTorch 标准算子,如果不改就告诉他们这个模型无法部署上线。」
生硬拒绝会破坏算法与工程的协同创新,缺乏深入分析算子物理瓶颈、联合编写自定义 Triton / CUDA 融合算子并实现量化兼容的工程担当。
② 面试官追问逻辑
③ 深挖后可量化的高分示范
Infra 工程师是连接前沿算法创新与高吞吐工程落地的桥梁。遇到非标算子时,我首先与算法同学闭门对齐设计初衷:搞清楚该自定义结构带来了多大的准确率提升(是否有显著算法收益);其次评估替代方案:若收益巨大,我不会强制其回退,而是联合算法攻坚:使用 OpenAI Triton 语言或编写原生 CUDA 算子重写该模块,并将其无缝编译接入 TensorRT-LLM 或 vLLM 的自定义算子扩展插件中;最后在开发环境补齐精度对齐测试(误差控制在 1e-3 以内)并建立专属基准评测,既保护了算法创新,又保障了线上推理吞吐。
① 简历常见平淡回答
「告诉老板我们省了好多张显卡,把每次优化的技术细节写成周报发给高管,让他们看到我们很努力。」
深奥的技术细节无法打动财务与管理层,缺乏以商业语言(成本节省金额、单 Token 边际成本下降、业务承载量上限提升)量化证明投入产出比。
② 面试官追问逻辑
③ 深挖后可量化的高分示范
向管理层汇报必须「以商业财务视角汇报工程战果」。我构建了全公司统一的《大模型算力成本与效能罗盘》:核心度量指标从晦涩的算子加速比转化为「单百万 Token 综合服务成本(Cost per Million Tokens)」与「单卡并发承载上限」;在业务年中复盘时展示:通过落地投机解码、KV Cache 内存分页与动态前缀缓存,我们在业务调用量激增 3 倍的背景下,未新增采购任何一张 H800 GPU 卡,直接为公司规避了数百万元的硬件采购与云机房租赁开销;用无可辩驳的真金白银数据确立算力工程团队的硬核业务贡献。
换个岗位,继续练
练完大模型推理与算力优化,通常接着练这些相邻岗位
AI Agent工程师面试深挖 15 题
工作流编排 · 工具调用 · 检索与评测 · BQ
查看题库
同技术栈算法工程师面试深挖 15 题
机器学习 · 工程落地 · BQ
查看题库
常见转型大数据开发面试深挖 15 题
实时数仓 · 流批一体 · 离线计算 · BQ
查看题库
没找到你的岗位? 查看全部 25 个岗位 →