标签题目
性能排查相关面试题第 2 页
接手一个未量化的大模型时,如何推进量化方案选择、校准、精度评估和推理性能迭代?
这题考未量化大模型的量化 rollout 方法论,重点是从部署目标、量化范围、校准集、kernel 支持、质量回归、性能收益到灰度回滚形成闭环,而不是背几个量化名词。
同题还出现在 1 个公司岗位
AWQ 等权重量化引入反量化步骤后,为什么仍可能让 LLM 推理整体变快?
这题考权重量化的反直觉加速机制,核心是解释额外 dequant 计算为什么可能小于权重带宽、显存占用、cache 命中和融合带来的收益,同时说明它只在合适瓶颈和 kernel 支持下成立。
推理优化中为什么常把动态图转成静态图再做算子融合,转换开销如何评估和控制?
这题考动态图和静态图在推理优化中的取舍,重点是静态图提供全局依赖、shape、pattern 和内存信息,便于融合和调度优化;转换开销要靠缓存、shape bucketing、warmup、fallback 和端到端摊销控制。
把 FP16 权重量化为 INT8 并保留 FP32 scale 时,scale factor 如何计算,为什么常用绝对值最大值定标?
这题考权重量化的基础闭环:从 FP16 到 signed INT8 的映射、scale 的计算、absmax 定标的原因、反量化误差,以及 per-tensor/per-channel 和 outlier 取舍。
手写 CUDA vector add kernel 时,为什么需要边界判断,为什么通常不用 shared memory,block size 和 warp 有什么关系?
这题考 CUDA 入门 kernel 的工程基本功:线程索引、越界保护、全局内存合并访问、shared memory 是否有复用收益、block size 与 warp/occupancy 的关系。
非对称量化相比对称量化,在计算和反量化时会带来哪些额外开销与精度影响?
这题考 zero point 带来的计算差异。好答案要从量化公式展开到矩阵乘额外修正项、预计算可能性、性能代价,以及非零中心分布下的精度收益。
手写 CUDA Softmax2D 时,如何在 K 维做数值稳定的 softmax,避免指数溢出和精度爆炸?
这题考 row-wise softmax kernel 的正确性和性能:按 K 维减最大值、FP32 累加、block/warp reduction、不同 K 大小的线程映射,以及极端输入验证。
AI 平台接口上线前,如何验证模型降级、Prompt 版本追踪、配置回滚和缓存一致性?
这题考 AI 平台接口的上线准备,不是普通接口冒烟测试,而是围绕模型降级、Prompt 可追踪、配置回滚、缓存一致性、灰度观测和事故演练建立发布门禁。
针对特定 GPU 架构做算子优化是否值得,如何权衡性能收益、维护成本、可移植性和 fallback 方案?
这题考 GPU kernel 优化的工程取舍:不是问能不能榨干某一代硬件,而是问性能收益是否覆盖多架构维护、编译发布、回归矩阵和 fallback 成本。
手写 CUDA All-Reduce/归约 kernel 时,如何设计线程内与 block 内归约,并说明 block 间同步和跨 GPU AllReduce 通常为什么需要多 kernel、cooperative groups 或 NCCL?
这题要先澄清 All-Reduce 在面试手写题里的边界:单 GPU 内通常先写归约 kernel,再解释 block 间同步为什么不能靠普通 __syncthreads 解决;真正跨 GPU AllReduce 属于通信 collective,通常交给 NCCL 或多阶段通信算法。
STFT 中常见窗函数(矩形、Hann、Hamming、Blackman)如何实现,它们如何影响主瓣宽度、旁瓣抑制、频谱泄漏和时频分辨率?
这题考 STFT 加窗的频谱分析基础:窗函数通过截断和加权每一帧信号,改变主瓣宽度、旁瓣高度和泄漏程度,从而影响频率分辨率、动态范围和重构稳定性。
评估实时语音模型复杂度时,参数量、FLOPs/MACs、实时率 RTF、端到端延迟、内存和功耗分别怎么看?
这题考实时语音模型的工程评估口径:参数量看存储和权重内存,FLOPs/MACs 看理论计算,RTF 看吞吐,端到端延迟看交互体验,内存和功耗决定能否在目标设备稳定运行。
音频模型从 QAT 量化感知训练到板端部署的完整流程是什么,遇到算子不支持、精度回退或性能不达标时如何排查?
这题考的是能否把 QAT 从训练技巧讲成完整工程闭环:先确定板端约束和浮点基线,再做 fake quant 训练、图转换、算子适配、板端对齐、精度回归和性能功耗压测。
大模型推理变慢时,如何从序列长度、batch、KV Cache、量化、FlashAttention 和 GPU 资源排查?
这题考 LLM 推理性能诊断闭环。高质量回答应先定义慢在哪里,再拆分队列、prefill、decode、KV Cache、batch 调度、attention kernel、量化、GPU 利用率和服务链路,用指标定位瓶颈,而不是一上来堆优化名词。
同题还出现在 1 个公司岗位
MoE 路由中 Top-K Routing、负载均衡损失和 capacity factor 分别解决什么问题?
这题考 MoE 路由机制的核心部件:Top-K Routing 决定每个 token 激活哪些专家,负载均衡损失避免专家塌缩和热点,capacity factor 控制每个专家可接收 token 的上限。回答要把模型质量、稀疏计算、通信成本和工程稳定性连起来。
在 LLM 推理算子中,什么时候应使用 CUDA Core,什么时候应使用 Tensor Core?
这题考察 GPU 架构理解和算子选型能力,核心不是背概念,而是能按算子形态、数据类型、规模、访存和精度做工程判断。
Qwen 这类大模型训练中,混合精度训练如何实现,为什么能提升吞吐并降低显存?
这题考的是大模型训练数值与系统效率的结合:混合精度不是简单把所有张量改成 FP16,而是在前向、反向、梯度、权重、优化器状态和通信之间选择合适精度来兼顾吞吐、显存和稳定性。
大模型训练中的 3D 并行和 DeepSpeed 分别解决什么问题,如何组合使用?
这题考的是大模型训练系统的分解能力:3D 并行解决模型和计算如何切到多卡上,DeepSpeed 提供 ZeRO、混合精度、checkpoint、offload 和并行编排等工程能力,两者可以组合但不是同一个概念。
Qwen 支持 128K 长上下文时,如何降低显存占用和注意力计算复杂度?
Qwen 这类支持 128K 长上下文的大模型,不能只靠把最大位置编码拉长来解决问题,核心挑战是注意力计算随序列长度接近平方增长、KV cache 随层数和上下文长度线性增长、训练激活和通信也会放大。常见工程组合包括 RoPE 外推或缩放、FlashAttention 类内存高效注意力、GQA/MQA 降低 KV cache、paged/quantized KV cache、chunked prefill、序列并行或 context parallel、激活重计算,以及在可接受的质量边界内使用滑窗、稀疏或分块注意力。回答时要区分降低显存峰值、降低 KV cache、降低真实计算复杂度三件事。
大模型训练显存如何估算,参数、梯度、优化器状态、激活和临时缓存各占哪些部分?
大模型训练显存可以先拆成 model states、activations、temporary buffers、通信缓存和碎片/框架开销。model states 包括参数、梯度和优化器状态;以 Adam 混合精度训练为例,常见粗估是参数 bf16/fp16 2P、梯度 2P、Adam 一阶和二阶矩 fp32 8P、可选 fp32 master weights 4P,总计约 12P 到 16P bytes。除此之外,activation 随 batch、sequence length、hidden size 和层数增长,长上下文 attention 还可能带来平方项;临时缓存包括 attention workspace、GEMM workspace、logits、通信 bucket、all-gather buffer 和内存碎片。估算时要同时考虑并行策略、ZeRO 分片、activation checkpointing、精度和 micro-batch。
同题还出现在 1 个公司岗位
RAG 处理大表格时,如何切块、限流和错峰,避免索引写入与消息队列被压垮?
这题考的是候选人能否把大表格 RAG 从“把每一行都扔进 embedding 和向量库”升级为可控的数据管道:先减少无效 chunk,再用限流、批量、队列削峰、错峰调度和可观测性保护索引系统与消息队列。
TensorRT-LLM(TRT-LLM)和 vLLM 在 LLM 推理部署中有什么区别,TRT-LLM 主要靠哪些机制加速?
这题考 LLM 推理部署中的系统取舍。好的回答要把 vLLM 和 TensorRT-LLM 区分为不同工程侧重点:vLLM 更像面向在线服务的通用推理引擎和调度系统,强调 PagedAttention、连续批处理、OpenAI 兼容服务和模型接入灵活性;TensorRT-LLM 更贴近 NVIDIA GPU 上的编译优化与高性能运行时,强调 TensorRT engine、算子融合、专用 kernel、量化、KV cache、in-flight batching 和多 GPU 通信优化。不能简单说谁一定更快,要看模型、硬件、batch、延迟目标和工程成本。
LLM 推理引擎中 GPU 内存管理机制应如何设计,如何管理 KV Cache、显存碎片、并发 batch 和 OOM 降级?
这题考的是推理引擎的显存资源治理能力:不能只会调用 CUDA malloc,而要能把 KV Cache、临时 workspace、权重、并发请求、碎片控制和 OOM 降级统一成可预测、可观测、可调度的内存系统。
大模型推理时出现 OOM,如何从 batch、输入长度、KV Cache、临时张量峰值和算子实现排查?
这题考推理 OOM 的系统化排障能力:要能把显存占用拆成权重、KV Cache、prefill 临时峰值、decode 并发、算子 workspace 和碎片,并用可复现实验逐步定位,而不是一句降低 batch size。
大模型训练中的 MFU 指标是什么,如何结合 Nsight/Profiler 定位吞吐瓶颈?
这题考训练性能分析能力:MFU 是把实际训练吞吐折算成模型有效 FLOPs 后,与 GPU 理论峰值比较的利用率指标;定位瓶颈要把 MFU、step time、kernel 时间线、通信、数据加载和显存行为一起看。
模型做 W4A8 量化或模型迁移后,如何验证激活值、梯度和权重是否正确,并用校准数据控制误差?
这题考量化和迁移后的数值正确性验证:要能从权重映射、激活分布、梯度流、逐层误差、校准集覆盖和端到端指标几层建立质量闭环,而不是只跑一遍精度评测。
VikingDB 这类向量数据库如何设计核心链路,向量写入、ANN 索引、元数据过滤和查询召回如何协同?
这道题考察对向量数据库核心链路的系统设计能力,而不是背某个产品未公开实现。回答要从写入、向量化、分片、持久化、ANN 索引构建、增量更新、元数据过滤、查询召回、重排和运维指标串起来,说明向量、原始文档、元数据和索引如何保持一致。关键是讲清近似召回与过滤条件的协同:先过滤、后过滤、混合过滤各有什么代价;写入与索引的实时性、删除更新、分布式扩展、一致性和评估指标如何设计。
SmoothQuant 为什么要做 activation/weight 平滑?平滑参数如何设定,用激活分布判断模型是否适合时应关注 input channel 还是 output channel?
这道题考察对 SmoothQuant 的核心动机、等价变换和校准维度的理解。回答时要先说明 LLM 的激活 outlier 会让 INT8 activation 量化特别困难,而 SmoothQuant 通过按输入通道缩放,把一部分动态范围压力从 activation 平滑地迁移到 weight 上,从而让 W8A8 推理更稳定。关键点不是笼统地说做归一化,而是说明缩放不改变浮点计算语义、参数需要用校准集和逐层误差选择,并明确判断激活分布时主要看线性层的 input channel 维度。
AWQ 和 GPTQ 的量化原理有什么区别?在 LLM 推理部署中它们各自适合什么取舍?
这道题要求区分 AWQ 和 GPTQ 都是大模型后训练量化方法,但优化目标和工程取舍不同。GPTQ 更像基于二阶近似的逐块权重量化误差补偿,利用校准激活构造 Hessian 近似来最小化层输出重构误差;AWQ 则强调 activation-aware 的显著权重保护,通过观察激活通道重要性和缩放搜索减少关键通道误差。好的回答要能讲清原理差异、校准成本、精度与速度、kernel 适配、以及在 LLM 推理部署中的选择标准。
分布式 LLM 训练中 AllReduce、AllGather、ReduceScatter 和 AllToAll 分别解决什么通信问题,哪些并行场景会用到它们?
这道题考察分布式训练中 collective communication 的语义和并行策略映射。回答要先把 AllReduce、AllGather、ReduceScatter、AllToAll 的输入输出关系讲清,再说明它们分别解决梯度汇总、参数或激活拼接、归约后分片、个性化交换等问题。进一步要能联系数据并行、张量并行、ZeRO/FSDP、序列并行、专家并行和 MoE token dispatch,指出通信量、同步开销、拓扑和 overlap 对训练效率的影响。
如何根据模型参数量、训练 token 数、FLOPs、GPU 数量和硬件利用率估算 LLM 训练时间?
这道题考察能否把 LLM 训练时间从经验判断转成可计算的工程估算。核心公式是总训练 FLOPs 除以集群有效算力:dense decoder-only 模型可用约 6 × 参数量 × token 数估算前向加反向训练 FLOPs,再除以 GPU 数、单卡峰值 FLOPs 和硬件利用率或 MFU。好的回答还要说明单位换算、序列长度和 attention 开销、MoE active 参数、数据并行扩展效率、checkpoint/eval/restart 等 wall-clock 修正因素。
图像滤波如何通过卷积实现,如何从频域理解低频平滑和高频边缘信息?
图像滤波可以从空间域和频域两条线理解:空间域里,卷积核在局部邻域加权求和,改变每个像素与周围像素的关系;频域里,卷积等价于频谱相乘,滤波器是在保留或抑制不同频率成分。低频通常对应缓慢变化的亮度和大块结构,低通滤波会平滑噪声和细节;高频通常对应边缘、纹理和突变,高通或梯度滤波会强化轮廓但也可能放大噪声。
高斯卷积核如何用可分离卷积等方式优化,时间复杂度和效果会怎样变化?
高斯卷积核优化的核心是利用数学结构和硬件特性减少重复计算。二维高斯核可分解为横向一维高斯和纵向一维高斯的外积,因此一次 K×K 卷积可以改成两次长度 K 的一维卷积,理论复杂度从每像素 O(K²) 降到 O(2K),效果在同一离散核和边界策略下基本等价。进一步还可以通过截断半径、缓存、SIMD、定点化、近似盒滤波或递归滤波继续提速,但要说明精度、边缘和伪影取舍。
积分图如何实现均值滤波,为什么能把窗口求和从面积相关降到常数时间?
积分图用于均值滤波的关键是把每个像素左上方矩形区域的累计和预先存起来。这样任意轴对齐窗口的像素和都可以由四个角的积分值相加相减得到,不再需要逐个遍历窗口内所有像素。对半径为 r 的均值滤波,朴素方法每个像素要累加 (2r+1)² 个值,而积分图在预处理 O(HW) 后,每个窗口求和只需常数次读取和加减,再除以窗口面积即可得到均值。
CUDA 算子优化后如何做公平 benchmark,排除硬件和精度差异,并证明性能提升真实有效?
这题考 CUDA 算子优化后的性能证明能力。好答案要建立公平 benchmark:固定硬件、驱动、CUDA/cuDNN/cuBLAS 版本、dtype、shape、batch、warmup、stream、同步点和统计方法;排除异步计时、首次编译、温度降频、不同 GPU 架构和精度算力差异;再用 Nsight/NCU 证明瓶颈从访存、计算、occupancy、launch 或同步角度确实改善,并用精度回归和端到端指标证明收益真实。
vLLM 和 SGLang 在 LLM 推理引擎中分别解决什么问题,如何从 PagedAttention、前缀复用和请求调度角度比较?
这题考 LLM 推理引擎的系统理解,而不是问两个项目谁更快。好答案要说明 vLLM 的核心公共概念是提升 serving 吞吐和显存利用率,典型抓手包括 PagedAttention、KV cache 分页管理、continuous batching 和 prefix caching;SGLang 更强调面向复杂 LLM 应用的编程/运行时,围绕结构化生成、多轮/多调用流程、前缀复用、调度和缓存优化降低复杂请求的执行成本。比较时要从 KV 管理、前缀复用、请求调度、结构化输出、内存压力和 workload fit 讲边界,避免虚构版本特性。
为什么 CPU 通常需要多级 Cache,而 GPU 更强调 shared memory、coalescing 和高带宽并行访存?
这题考 CPU/GPU 架构差异和访存优化思路。好答案要说明 CPU 面向低延迟、强控制流、少量复杂线程,依赖多级 Cache、分支预测和乱序执行降低单线程访存延迟;GPU 面向高吞吐、大量线程并行,用 warp 调度隐藏延迟,更强调 coalesced global memory access、shared memory 显式复用、高带宽和 occupancy。不能简单说 GPU 没有 Cache,而要说明 GPU 也有 L1/L2/纹理等缓存,只是优化重点从自动低延迟缓存转向显式数据布局和并行带宽利用。
大模型后训练投入成本如何决策,怎样用效果收益、训练成本、推理成本和风险指标做取舍?
这题考的是大模型后训练的工程 ROI 判断。好答案不能只说效果好就继续训,而要把收益、训练成本、推理成本、数据和安全风险放到同一张决策表里,用离线评测、线上指标、成本模型和风险阈值决定做 SFT、DPO/RL、数据修复、提示词优化、RAG、蒸馏还是不做。
大语言模型的参数量具体指什么,如何估算一个 Transformer Block 的参数规模?
这道题考察模型参数量的数量级推导能力。参数量是可训练权重标量的数量,不等于显存、FLOPs 或上下文长度。好答案要能用 hidden size、FFN 中间维度、层数、词表大小估算一个 Transformer block,并说明 GQA/MQA、SwiGLU、MoE、权重共享、LoRA 和量化对成本含义的影响。
单机多卡和多机多卡训练的核心差异是什么,如何根据互联拓扑、通信开销和并行策略做选择?
这道题考察分布式训练的系统判断。单机多卡和多机多卡的差异不只是 GPU 数,而是互联拓扑、通信延迟、带宽、故障域、调度、存储和并行策略。好答案要能按显存瓶颈、计算/通信比、batch、模型规模和网络条件选择 DDP、FSDP/ZeRO、张量并行、流水线并行或组合方案。
同题还出现在 1 个公司岗位
训练好的 AI 模型线上推理延迟高时,如何用量化、剪枝、TensorRT 和服务链路优化提速?
这道题考模型部署优化。高质量回答要先定位瓶颈,再分模型压缩、推理引擎、GPU 执行、批处理和服务链路逐层优化,并说明精度、吞吐、P99 延迟和稳定性的取舍。
生产中的 AI 服务如何保障全天稳定运行,覆盖资源、限流、降级、监控和模型依赖治理?
这道题考 AI 服务稳定性治理。好答案要覆盖容量、GPU/模型资源、流量控制、依赖失败、降级策略、监控告警、灰度发布和故障演练。
线上模型效果变差时,如何从数据漂移、特征、模型版本、评估集和服务链路排查?
这道题考模型线上效果诊断。关键是先确认指标和影响范围,再按数据、特征、模型、评估、服务链路和实验版本逐层排查,避免一上来只怪模型。
如何评价并落地 AI 辅助开发:它能提升哪些开发环节,开发者仍必须承担哪些工程责任?
这道题考候选人对 AI 编程工具的工程判断。好答案要说明 AI 能提升需求拆解、代码阅读、样板代码、测试、排错和文档效率,也要明确架构决策、正确性、安全、隐私、性能、代码审查和最终交付责任仍在开发者。
同题还出现在 1 个公司岗位
大模型时代,小模型还有哪些价值,如何在效果、成本和延迟之间取舍?
大模型时代小模型仍然有价值,尤其在低延迟、低成本、高并发、端侧部署、隐私保护和专用任务上。合理方案通常不是二选一,而是用小模型承担高频、确定、轻量任务,用大模型处理复杂、开放、低置信或需要强推理的请求。
Agent 系统里上下文缓存有什么价值,如何用它处理频繁复用的系统指令并降低冗余上下文成本?
这题考 Agent 上下文缓存和 prompt caching。核心是把稳定系统指令、工具协议和安全策略作为可缓存前缀,把用户问题、检索材料和工具结果作为动态上下文,并通过版本、权限作用域和失效机制避免缓存污染。
GPU 推理中 depthwise / separable convolution 为什么可能变慢,为什么常被判断为访存密集型算子?
这题考 GPU 推理中 depthwise / separable convolution 为什么容易 memory-bound。它虽然显著降低 FLOPs,但 activation 读写没有同比减少,算术强度低,无法充分利用 GPU 计算吞吐,瓶颈常转向显存带宽、cache locality 和 kernel launch。
推理优化中为什么可以做 Conv+BN 融合,融合后的权重和偏置公式如何推导?
这题考推理态算子融合的数学等价性和工程收益。BN 在 inference 时使用固定 running mean/variance,是逐输出通道仿射变换,所以可以吸收到前一层卷积的权重和偏置里,减少算子调度和中间 tensor 读写。