在以前版本的VTune中,有一个名为dsep.exe的程序,可以用来定期轮询VTune中的硬件计数器(特别是与DRAM读/写相关的计数器)。这使我能够及时收集每个实例的计数器数据,而不是在最后收集一个摘要。
不幸的是,这个工具在64位操作系统中已经被弃用。是否有人知道如何定期(例如每1秒)从VTune(或Windows中的其他程序)获取硬件计数器数据?
提前谢谢你的帮助。
最佳答案
好吧,我没能完全解决这个问题,但我已经很接近了。
最新版本的VTune将所有硬件计数器数据保存在sqlite数据库(projectfolder/sqlite db/dicer.db)中。由于无法直接从gui中导出所有硬件计数器数据,因此可以使用sqlite浏览器数据来获取所需的数据。
大多数硬件数据都存储在pmu数据表中,并用一些奇怪版本的rdtsc调用来标记时间戳。