现代处理器使用各种技巧来弥合其处理单元的高速度和外部存储器的延迟之间的差距。在性能关键型应用程序中,代码的结构方式通常会对其效率产生相当大的影响。例如,使用SLO分析器的研究人员能够修复缓存局部性问题,并将几个SPEC2000基准程序的执行速度提高一倍。我正在寻找一个开源工具的建议,该工具利用处理器的性能监控支持来定位和分析体系结构的低效,例如缓存未命中、分支预测失误、前端停顿、地址别名造成的缓存污染、长延迟指令和TLB未命中。我知道英特尔的VTune (商业),AMD的CodeAnalysist (免费,但不是开源的)和Cachegrind (依赖于模拟)。
发布于 2009-04-06 07:47:51
对于linux,oprofile运行得很好。实际上,AMD的CodeAnalysist使用oprofile作为其后端。
Oprofile使用处理器的内部性能调整机制来分析体系结构的低效。
https://stackoverflow.com/questions/720506
复制相似问题