对所有核心使用 perfsuite
Posted
技术标签:
【中文标题】对所有核心使用 perfsuite【英文标题】:Use perfsuite for all core 【发布时间】:2012-10-12 17:32:38 【问题描述】:我正在尝试使用 perfsuite(内部使用 papi)来测量函数周围的一些性能计数器。此函数为每个内核生成一个线程。 问题是,如果我在函数调用之前启动计数器并在调用之后停止它们,我会得到这些计数器的错误值。 但如果该函数不创建任何线程,它会得到正确的值。
我知道 psrun 可以获取可执行文件的所有内核的计数器。但我希望函数调用具有相同的功能,而不是可执行文件。
我在 Debian 上使用来自 C 的 perfsuite 1.1.1 和 papi 4.4.0。
【问题讨论】:
【参考方案1】:PAPI 计数基于线程而不是内核。如果您想要后者,您可能需要考虑使用 intel pcm - 它能够提供每个核心的计数。
它回答了你的问题吗?
tjr
【讨论】:
感谢您的回答。我不知道 PCM 是如何工作的。而且我不确定您对 PAPI 的说法是否属实。在任何情况下,我的线程都在每个核心运行一个,使用亲和力。所以,PAPI 应该可以工作,这正是我所需要的。以上是关于对所有核心使用 perfsuite的主要内容,如果未能解决你的问题,请参考以下文章
在对所有可能的核心文件进行更改后,无法从 Magento 的价格中删除十进制值