[转]Intel GPA图形分析工具
原文地址: http://blog.csdn.net/sr0ad/article/details/8253144
这里就不扯什么大道理了,神马DX9之类的了,还是工具介绍吧。
Intel GPA,我用的版本是4.1,不光能针对集成的Intel显卡进行分析,对于Nvdia,AMD的独立显卡一样能够进行分析。
GPA 监控器 - 将GPA 连接至本地或远程电脑上,以便您配置 HUD 模式和键盘快捷键。
GPA 系统分析器 - 实时显示应用性能指标,位于 Microsoft DirectX 应用之上。通过系统分析器可以知道是占用CPU资源更多还是GPU资源更多,当然具体需要通过配置不同的模式来达到分析的目的。

CPU瓶颈原因大致如下:
场景管理(Bsp、QuadTree、Portal等)
复杂计算(蒙皮骨骼动画、地形等)
AI计算(寻路、关卡AI等)
物理引擎(碰撞检测、物理效果模拟等)
GPU瓶颈原因也列举几条:
顶点buffer数目
渲染状态批次
纹理大小数目
高级效果计算
分析的时候可以选择这几个模式,Null Hardware,Null Driver,1X1 Scissor Rect
“Null Hardware”。
此状态覆盖模式能把显卡上的负载去掉,也相当于把显卡的性能提升到无穷大。可以用于评估显卡负载对帧速率的影响程度。
是否显著提升帧率(1倍以上),这说明GPU的负载较重,是主要瓶颈之一 。若改变很小,则说明CPU出现瓶颈。
“Null Driver”。
此模式把显卡驱动以及其后显卡硬件上的负载都去掉,可以用于评估游戏应用层代码的负载对帧速率的影响程度。
此模式的帧速率同时反映了不修改代码的情况下,游戏在任何显卡上(保持CPU和内存相同)的性能上限。
帧数是否在100以上,说明游戏应用层代码掉用DX运行时的负载较重 。
“1X1 Scissor Rect”。
此模式几乎可以去除显卡Rasterization阶段后的所有负载。使用此模式可以评估象素相关的负载(包括纹理访问)对帧速率的影响程度。
帧数变化明显,说明像素着色出现瓶颈。若帧数变化不明显,可能顶点着色出现瓶颈。
GPA 帧分析器 - 可以详细地查看所捕获的帧文件,该文件包含所有用于渲染所选 3D 帧的 Microsoft DirectX 环境及每绘图调用/区域 GPU 指标。该工具有助于在帧等级、渲染目标等级及绘图调用等级上了解应用性能,在无需重新编译或重新构建应用的情况下支持详细分析。

每帧的绘制调用(DrawCall)大约低于700-800个比较合适。
每帧的渲染状态绘制比(改变/绘制调用)小于15,比较合适。
每帧中调用的DX锁的总时间/整个帧时间比要大于150比较合适。
更多分析内容,就不在此多说了,intel的网站有一些相关的内容,可以供大家参考。
http://software.intel.com/zh-cn/articles/intel-graphics-performance-analyzers-quick-start-guide/
http://software.intel.com/zh-cn/articles/Kingsoft_GPA_Case_Study/
浙公网安备 33010602011771号