优化

Video Game Optimization——性能工具

工具反馈是性能优化中重要的一环

侵入性

如果测量工具是侵入式的将会降低应用的性能。

从侵入性最低的在虚拟机上运行,到需要hook到需要插入代码修改程序。

工具的类型

Profiler

  • 总时长
  • 自身耗时
  • 调用次数
  • 等待时间

System Monitor

System Adjusters

禁用光栅化、锁定CPU频率

Timer使用101

在使用计时器的时候需要注意计时器的精度,在应用中往往很难拿到精确的计时器时间。

然后要注意共享的计时器,会引入错误,就和android的共享内存一样。

最后要注意消耗比较大的计时器。在获取计时器的时候如果做了其他的操作会导致实际的结果不正确。

Code Instrumentation

尝试利用基础工具来自己实现工具。可以帮助你在没有任何好用工具的时候来服务你。

简单计时

最基础的测量方法

分层分析(Hierarcial Profiling)

和UE4的stats差不多

Counters

一个事件的调用次数

Reports

把数据收集起来生成报告。

常用的工具

Intel VTune

强大的CPU分析工具。GPU的话可以用他家的GPA。

Windows上的Microsoft PIX

主要用来看DX API的调用情况

NVIDIA的PerfHUD

NVIDIA FX Composer

DirectX Debug Runtime

gprof

AMD CodeAnalyst

AMD GPU PerfStudio

总结

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注