应用性能分析 – 何时使用英特尔® 图形性能分析器与英特尔® VTune 放大器

经常有人问我:“英特尔® 图形性能分析器与 VTune 放大器之间有何区别?”  这个问题提的非常好,答案最终体现在使用案例和工作流这两个方面。  两种工具都非常适用于应用分析,而且同样重要。

在讨论它们的区别和使用案例之前,我们先来快速回顾一下这两种工具。 

VTune 放大器

VTune 放大器是一种基于轨迹的分析工具,可用于深入分析特定程序的运行时。   VTune 放大器可收集 CPU、GPU、带宽,线程等各种相关数据。   借助 VTune 放大器的热点分析功能,您可以快速识别耗时最长的代码行。  当前的许多应用都是多线程应用。  VTune 放大器可提供 “锁与等待” 分析,以快速确定线程化代码速度缓慢的常见原因。  此外,VTune 放大器还可提供大量 GPU 分析,支持 OpenCL 工作负载和 GPU 分析。   这是关于 VTune 放大器内部分工具的简单介绍。 最后,VTune 放大器可提供基于硬件的分析,以帮助您分析代码如何高效使用微处理器。 如欲了解更多详细信息,可直接访问 VTune 放大器网站。 

英特尔® 图形性能分析器 (GPA)

英特尔 GPA 由四台分析器和一台图形监控器组成。   它们各自负责分析图形优化工作流的不同阶段。  系统分析器负责远程目标的实时指标分析。   平台分析器负责分析 CPU 密集型图形应用。  面向 DirectX 的帧分析器和面向 OpenGL 的帧分析器负责分析 GPU 密集型图形应用。  GPA 旨在进行图形分析,以快速调试、分析并优化游戏和图形应用。  如欲了解关于 GPA 的更多信息,请访问 GPA 网站。  

何时使用这两种工具?

由于 VTune 分析器和 GPA 都可用来分析应用性能,因此我们通常会面临一个问题: “应该选择哪种工具?”   要回答这个问题,我们必须充分了解两者之间的区别。 

答案很简单,如果是图形应用,首先使用图形性能分析器,如果应用最后占据大量 CPU 资源,那么再转而使用 VTune 分析器。   如果不是图形应用,首先使用 VTune 分析器进行基本热点分析。  下面是一张通用决策表,可用于分析特定应用的性能。 

如果目标应用是 GPU 密集型图形应用,可使用帧分析器。   如果是 CPU 密集型图形应用,那么首先使用平台分析器,然后根据需要使用 VTune 放大器进行更加深入的分析。   如果不是图形应用,最好首先使用 VTune 放大器。 

两者之间的区别?

既然两种工具都可用于分析 CPU 密集型图形应用,那么它们两者之间有何区别? GPA 主要面向创建复杂 3D 环境的游戏开发人员而设计。  平台分析器支持开发人员快速建立 GPU 帧和 CPU 帧之间的相关性、查看 DirectX 或 OpenGL ES 渲染线程的持续时间和序列化,并详细研究系统分析器获取的实时指标。  平台分析器是一种以 GPU 为中心的应用,主要用于显示 CPU 数据,以便与 GPU 数据建立关联性。  如果开发人员希望逐行对代码的性能进行深入分析,可以使用 VTune 放大器。 

例如,开发人员通过系统分析器发现游戏是 CPU 密集型,那么他们可以捕获轨迹,并继续在平台分析器中分析该轨迹。   然而开发人员在平台分析器中发现渲染线程并不是问题所在,但游戏业务逻辑仍然无法正确线程化。   此时,开发人员可以使用 VTune 放大器的 “锁与等待” 分析功能来解决线程化问题。

知道何时使用这两种工具是理解两者区别的最佳方法。  如果您在 GPA 或 VTune 放大器方面存在任何问题,可直接访问论坛(GPAVTune Amplifier)。  我们非常高兴为您回答任何问题。

Для получения подробной информации о возможностях оптимизации компилятора обратитесь к нашему Уведомлению об оптимизации.
Возможность комментирования русскоязычного контента была отключена. Узнать подробнее.