Intel VTune基本使用介绍

时间:2024-05-19 17:38:50

前言

Intel VTune Amplifier是intel公司开发的一款强大的性能瓶颈分析软件,能帮助开发者找出性能影响因素,它支持Linux* OS,Windows* OS,Android* OS等目标平台和VMWare,KVM等虚拟平台,支持独立下载安装和集成安装。


使用步骤

如果使用icc中的vtune

  • 使用Xmanager中的Xshell进行连接(不能使用默认Xshell),必须先source icc环境,使用icc -v看到icc版本信息说明icc环境准备成功。

  • 如果要测试GCC编译的程序或其它的程序,也先要source 对应的环境(例如分析benchmark)。

  • 启动amplxe-gui,并新建工程和新建分析,如图1所示:
    Intel VTune基本使用介绍

  • 选择需要分析的文件和输入参数以及源码文件,如图2所示:
    Intel VTune基本使用介绍
    注意:
    1)如果测试例子是benchmark,为了避免可能出现其它未知错误,可执行文件请选择run目录下面的;2)如果运行参数是输入集的话请使用<,例如<input.in;3)便于结构分析,请选择源码文件位置。

  • 点击choose analysis,选择基本热点分析(Basic Hotspots)或者高级热点分析(Advanced Hotspots),Advanced Hotspots需要在intel平台才能支持,如图3所示:
    Intel VTune基本使用介绍

  • 最终运行结果总体摘要信息,如图4所示:
    Intel VTune基本使用介绍

  • 自下往上分析(Bottom-up)中,默认分组为Function/Call Stack,Loop mode为Function only,其中分析出的就是程序中最热的函数区域,如图5所示:
    Intel VTune基本使用介绍

  • 分析热函数?点击对应函数的view source,显示出对应Source区域,点击Assembly按钮查看源码对应的汇编码等BB快的信息。

  • 调用与被调关系(Caller/Callee)显示函数的调用关系、CPU耗时、来源模块、起始地址等信息。

vtune功能非常齐全,本文仅对最基础使用做了简单介绍,更多关于Bottom-up,Caller/Callee,Top-down Tree和Platform详细信息可查阅Intel VTune Profiler文档。


常见问题说明

  1. VTune点击开始分析之后,本来10分钟运行结束的程序一直不会结束?
  • 很可能是因为你的输入写错了,导致程序运行不能停止,修改Analysis Target下的Application paramsmenters。
  1. 对热函数view source,只能看到汇编码,看不到对应的源码?
  • 原因1:你的程序生成可执行的时候不是可调试的,加上-g选项。原因2:选择分析文件时你没添加或没添加对源码文件位置。
  1. VTune分析时很快就结束运行,而且报license错误?
  • 重新source icc和其它环境再分析即可。

References: