我正在将小型库的使用添加到现有的大型软件中,并希望分析(在查找器详细信息中,而不仅仅是 in&out rdtsc() 或 gettimeofday 调用)开销及其对小型库的归属。使用 rdtsc() 之类的东西,我可以了解调用我的库函数所具有的延迟,但我无法进行延迟归因,除非我还能够查看分支是否没有被很好地预测,缓存是否工作不正常等等。我研究了 PAPI,因为我想象着在更大的二进制文件的上下文中查看进出库中例程的某些硬件事件,但似乎我需要一个特定的内核模块才能让 PAPI 为我工作(Linux 2.6. 18 && Intel Xeon 5570)...有专门为 Intel 处理器设计的 Vtune,但它看起来像
有没有办法让我使用 Vtune 来实现我的目标,或者可能有什么方法可以让我访问这些计数器而无需修补我的内核?