四 · PERFORMANCE TESTING & ANALYSIS
性能测试与分析体系
与渲染深度结合的六维性能画像
覆盖渲染、CPU、计算、内存、IO、稳定性六大性能域,配合时间 / 空间 / 平台 / 场景四个测试维度与完整工具链,形成可复现、可对比的性能画像。
渲染性能
Rendering Performance核心域:GPU 侧每一毫秒的去向。
- GPU 帧时间
各 Pass 耗时分解与瓶颈 Pass 定位
- DrawCall / Triangles / Overdraw
提交压力与像素浪费
- Shader 复杂度
指令数 / 带宽 / 寄存器压力
- 显存占用
纹理流送 / Render Target 显存开销
CPU 性能
CPU Performance多线程视角:每个线程的耗时归属。
- CPU 帧时间
各线程耗时与关键路径分析
- 三线程分解
GameThread / RenderThread / RHIThread
- TaskGraph / 异步任务
并行任务调度与依赖等待
- 系统开销
遮挡剔除 / 物理 / 动画 / AI 开销
计算性能
Compute Performance通用计算负载:Compute Shader 与异步计算。
- Compute Shader 耗时
线程组配置与占用率
- GPU Compute / Async Compute
与图形队列的重叠执行
- 典型负载
粒子 / Niagara / 蒙皮等 GPU 计算负载
- 并行度分析
Dispatch 数量 / 资源冲突 / 屏障开销
内存性能
Memory Performance容量与带宽双重约束下的内存画像。
- 占用分析
系统内存 / 显存占用分类统计
- 带宽使用
内存读写吞吐与峰值
- 缓存效率
缓存命中率 / Page Fault
- 流送性能
资源加载 / 流式传输(Streaming)性能
IO 与加载性能
I/O & Loading加载体验:从磁盘到渲染就绪的全链路。
- 磁盘 / 网络 IO 吞吐
读取带宽与延迟
- 资源加载时间
同步阻塞 vs 异步加载
- 场景切换
流式加载 / Level Streaming
- 着色器编译
Shader 编译卡顿与 PSO 缓存策略
稳定性与功耗
Stability & Power长时体验:稳定帧率比峰值帧率更重要。
- 帧率稳定性
Jank / 卡顿次数与分布
- 温度与降频
温度 / 频率曲线 / Thermal Throttling
- 功耗
电量消耗速率与能效比
- 健壮性
崩溃 / 内存泄漏检测
测试维度
Test Dimensions四个正交维度,保证测试结果可复现、可对比。
- 时间维度
平均帧 / P1 与 P0.1 分位帧 / 帧时间曲线
- 空间维度
分辨率 / 视距与 LOD / 场景复杂度
- 平台维度
PC 与主机 / 移动端 / 不同硬件档位
- 场景维度
战斗与探索 / UI 与加载 / 极端压力测试
常用工具链
Profiling Tools分层工具矩阵:从引擎内建到硬件级 Profiler。
- 引擎级
Unreal Insights / stat 命令 / CSV Profiler
- 帧调试
RenderDoc(帧捕获与 Pass 级分析)
- 硬件级
Nsight / RGP / PIX / Radeon GPU Profiler
- 移动端
Perfetto / Android GPU Inspector / Android Profiler
- 移动端厂商工具+扩展
Snapdragon Profiler / Arm Streamline / Xcode Instruments & Metal Debugger