我使用英特尔VTune 2018通过在系统下使用Intel_PT PMU来分析和推导控制流依赖性:
内核:4.15.0-13-通用,64位Ubuntu
CPU:Intel®Core™i7-7820X @ 3.60GHz×16
我开始使用以下命令:
1- amplxe-perf记录-o a.perf -T -e intel_pt // - ps
PID TTY TIME CMD 21471 pts / 1 00:00:00 amplxe-perf 21472 pts / 1 00:00:00 ps 58693 pts / 1 00:00:00 sudo 58694 pts / 1 00:00:00 su 58695 pts / 1 00:00:00 bash [perf记录:唤醒2次写数据] [perf记录:捕获并写了3.154 MB a.perf]
2- amplxe-cl -import a.perf -r文件夹
amplxe:100%完成导入新结果
amplxe:使用结果路径/home/amad/May2/folder'
amplxe: Executing actions 12 % Loading 'a.perf' file
/ home / amad / May2 / folder / data.0 / a.perf'(数据文件已损坏)。
amplxe:执行行动50%完成
amplxe: Error: Cannot load data file
amplxe:错误:0x4000001e(无法加载原始收集器数据)
虽然尚未成功导入intel_pt数据,但可以正确处理其他内核PMU事件的数据,如“cpu-cycles”和“instructions”:
1- amplxe-perf记录-o p.perf -T -e cpu-cycles,指令 - ps
PID TTY TIME CMD 8410 pts / 0 00:00:00 sudo 8458 pts / 0 00:00:00 amplxe-perf 8467 pts / 0 00:00:00 ps [perf记录:唤醒1次写入数据] [执行记录:捕获并写入0.024 MB p.perf(96个样本)]
2- amplxe-cl -import p.perf -r r2
amplxe:100%完成导入新结果
amplxe:使用结果路径/home/amad/r2'
amplxe: Executing actions 19 % Resolving information for
libprocps.so.6.0.0'
amplxe:警告:找不到文件/lib/x86_64-linux-gnu/libprocps.so.6.0.0'.
amplxe: Executing actions 21 % Resolving information for
vmlinux'的调试信息
amplxe:警告:找不到Linux内核的调试信息。源级分析是不可能的。功能级分析将仅限于内核符号表。有关说明,请参阅产品联机帮助中的“启用Linux内核分析”主题。
amplxe:执行动作75%生成报告
参数r2
操作系统4.15.0-13-通用
电脑名称amad-pc
结果大小2766877
收集器类型无驱动Perf每过程采样
参数r2
频率3600000000 逻辑CPU计数16
经过时间:0.011
暂停时间:0.0
CPU时间:0.011
平均CPU利用率:0.897
硬件事件类型硬件事件计数:自我硬件事件样本计数:每个样本的自我事件
cpu-cycles 40521584 45 4000
说明书36302909 51 4000
amplxe:100%完成执行行动
Intel_pt数据有什么问题?
由于