【发布时间】:2014-05-12 06:19:48
【问题描述】:
我想在 Windows 7 上使用 Vtune 从 QtCreator 分析应用程序。但是 Vtune 基本上是为 Visual Studio 应用程序制作的,所以我必须在我的函数名称和发布版本中的指令之间建立链接。 其实我在 Hotspots 中只有伪名 func@address,它不可用。
通过探索英特尔 Vtune 的“入门”,我发现我必须在我的发布版本中启用调试信息,但如何在 QtCreator 中执行?
来自“使用调试信息”文件:
为了提供准确的性能数据并启用源分析, 英特尔® VTune™ 放大器需要二进制文件的调试信息 它分析的文件。如果在 二进制文件,VTune 放大器静态识别功能 边界并将热点地址分配给生成的伪名称 func@address 用于此类功能。
如果没有调试信息,调用堆栈窗格可能不会展开 正确调用堆栈以进行用户模式采样和跟踪分析 类型。此外,在某些情况下,它可能需要更多时间 最终确定没有调试的模块的结果 信息。
在 Windows* 操作系统上,PDB 文件提供调试信息。 确保您的系统和应用程序库/可执行文件都有 PDB 文件。使用优化编译您的目标并开始分析 它的性能。
默认情况下,Microsoft Visual Studio* IDE 不生成 PDB 发布模式中的信息。使用 VTune 获得更好的结果 放大器,手动启用符号生成。对于系统库, 使用 Microsoft* 符号服务器下载所需的 PDB 文件 来自 Microsoft* 网站。请按照以下步骤确保 VTune Amplifier 使用系统和您自己的调试信息 图书馆。
我尝试了一些方法,例如:-编辑 file.pro 以更改发布版本
QMAKE_CXXFLAGS_RELEASE += -g
QMAKE_CFLAGS_RELEASE += -g
QMAKE_LFLAGS_RELEASE =
- 配置调试版本。
但它并没有改变任何东西,我仍然没有打印函数名称
非常感谢任何意见。
【问题讨论】:
标签: c++ windows qt profiling intel-vtune