VTune™ Amplifier XE 报告输出gprof的格式

在VTune(TM)Amplifier XE 2011 中包含二类预定义的分析:

1. User-mode Sampling and Tracing Analysis:

热点分析(Hotspots Analysis),并行分析(Concurrency Analysis),锁和等待分析(Locks and Waits Analysis)

2. Hardware event-based sampling analysis

一般性研究(General Exploration),内存带宽(Bandwidth),访问冲突(Access Contention),分支预测(Branch Analysis),存储访问(Memory Access),端口饱和(Port Saturation),等。

用户可以在amplxe-gui(图形界面)使用上述预定义的分析类型,结果产生在响应的报告。

当然用户也可以使用命令行(参阅此文)收集性能,结果也可以在命令行输出或导入工具的图形界面。使用命令行的好处是用户可以自定义自己的分析类型,如:

  1. 热点分析中,自定义采样间隔,参阅此文
  2. 自选的CPU事件计数器,参阅此文 

 

3. VTune™ Amplifier XE 定义了多种自己的输出格式,可以显示在工具的图形界面上。除此之外,工具还支持了gprof的输出格式。此种格式仅可以在命令行输出,不可以在图形界面上输出


请看下面例子:

VTune的输出格式列出最热函数,而不是全部;gprof格式给出全部函数(即使占用CPU时间极少),且注重函数间调用关系

 




 

 

 

# amplxe-cl -collect-with runss -knob interval=8 -knob collectSamplesMode=stack -- ./primes.icc
Determining primes from 1 - 100000
Found 9592 primes
Using result path `/home/peter/problem_report/r000runss'
Executing actions 75 % Generating a report
Summary
-------

Elapsed Time: 0.883
CPU Time: 2.080
Executing actions 100 % done

# amplxe-cl -report hotspots
Using result path `/home/peter/problem_report/r000runss'
Executing actions 75 % Generating a report
Function Module CPU Time
---------- ---------- --------
findPrimes primes.icc 2.080
Executing actions 100 % done

# amplxe-cl -report gprof-cc
Using result path `/home/peter/problem_report/r000runss'
Executing actions 75 % Generating a report
Index % CPU Time:Total CPU Time:Self Children Name Index
----- ---------------- ------------- -------- ------------- -----
[0] 100.0 0.0 2.08 clone [0]
0 2.080 start_thread [1]

0 2.080 clone [0]
[1] 100.0 0.0 2.08 start_thread [1]
2.080 2.080 findPrimes [2]

2.080 2.080 start_thread [1]
[2] 100.0 2.08 0.0 findPrimes [2]

[3] 0.0 0.0 0.0 _start [3]
0 0 main [4]

0 0 _start [3]
[4] 0.0 0.0 0.0 main [4]

Index by function name

Index Function
----- ------------
[3] _start
[0] clone
[2] findPrimes
[4] main
[1] start_thread
Executing actions 100 % done

 

 

 

 

 

有关编译器优化的更完整信息,请参阅优化通知