指令高速缓存未命中与数据高速缓存未命中相似,都是由于高速缓存已满而造成其它指令被冲出,也被称为capacity misses。为了测试指令的cache misses和memory相关信息,一般可使用perf工具或 Intel® VTune。
关于perf工具使用
使用perf测试memory和cache信息有较多的局限,推荐使用VTune。
perf help命令可查看相关命令以及说明,其中perf record记录了收集的事件采样信息,perf top显示资源消耗最高的函数信息,perf report查看报告等等。
使用sudo perf list命令可以看到 perf 支持的事件,事件有三种类型:Software event、Hardware event 和 Tracepoint event
- perf help查看命令帮助:
- perf list查看能监测的性能指标(perf list sw:显示支持的软件事件。 perf list hw:显示支持的硬件事件。perf list cache:显示硬件cache相关事件):
- 使用
perf record -g -e cpu-clock ./test
,生成cpu使用信息于perf.data文件(测试