· PERFORMANCE TESTING & ANALYSIS

性能测试与分析体系

与渲染深度结合的六维性能画像

覆盖渲染、CPU、计算、内存、IO、稳定性六大性能域,配合时间 / 空间 / 平台 / 场景四个测试维度与完整工具链,形成可复现、可对比的性能画像。

01

渲染性能

Rendering Performance

核心域:GPU 侧每一毫秒的去向。

  • GPU 帧时间

    各 Pass 耗时分解与瓶颈 Pass 定位

  • DrawCall / Triangles / Overdraw

    提交压力与像素浪费

  • Shader 复杂度

    指令数 / 带宽 / 寄存器压力

  • 显存占用

    纹理流送 / Render Target 显存开销

02

CPU 性能

CPU Performance

多线程视角:每个线程的耗时归属。

  • CPU 帧时间

    各线程耗时与关键路径分析

  • 三线程分解

    GameThread / RenderThread / RHIThread

  • TaskGraph / 异步任务

    并行任务调度与依赖等待

  • 系统开销

    遮挡剔除 / 物理 / 动画 / AI 开销

03

计算性能

Compute Performance

通用计算负载:Compute Shader 与异步计算。

  • Compute Shader 耗时

    线程组配置与占用率

  • GPU Compute / Async Compute

    与图形队列的重叠执行

  • 典型负载

    粒子 / Niagara / 蒙皮等 GPU 计算负载

  • 并行度分析

    Dispatch 数量 / 资源冲突 / 屏障开销

04

内存性能

Memory Performance

容量与带宽双重约束下的内存画像。

  • 占用分析

    系统内存 / 显存占用分类统计

  • 带宽使用

    内存读写吞吐与峰值

  • 缓存效率

    缓存命中率 / Page Fault

  • 流送性能

    资源加载 / 流式传输(Streaming)性能

05

IO 与加载性能

I/O & Loading

加载体验:从磁盘到渲染就绪的全链路。

  • 磁盘 / 网络 IO 吞吐

    读取带宽与延迟

  • 资源加载时间

    同步阻塞 vs 异步加载

  • 场景切换

    流式加载 / Level Streaming

  • 着色器编译

    Shader 编译卡顿与 PSO 缓存策略

06

稳定性与功耗

Stability & Power

长时体验:稳定帧率比峰值帧率更重要。

  • 帧率稳定性

    Jank / 卡顿次数与分布

  • 温度与降频

    温度 / 频率曲线 / Thermal Throttling

  • 功耗

    电量消耗速率与能效比

  • 健壮性

    崩溃 / 内存泄漏检测

07

测试维度

Test Dimensions

四个正交维度,保证测试结果可复现、可对比。

  • 时间维度

    平均帧 / P1 与 P0.1 分位帧 / 帧时间曲线

  • 空间维度

    分辨率 / 视距与 LOD / 场景复杂度

  • 平台维度

    PC 与主机 / 移动端 / 不同硬件档位

  • 场景维度

    战斗与探索 / UI 与加载 / 极端压力测试

08

常用工具链

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