0

我正在尝试使用 perfsuite(内部使用 papi)来测量函数周围的一些性能计数器。此函数为每个内核生成一个线程。问题是,如果我在函数调用之前启动计数器并在调用之后停止它们,我会得到这些计数器的错误值。但如果该函数不创建任何线程,它会获得正确的值。

我知道 psrun 可以获得可执行文件的所有内核的计数器。但我希望函数调用具有相同的功能,而不是可执行文件。

我在 Debian 上使用来自 C 的 perfsuite 1.1.1 和 papi 4.4.0。

4

1 回答 1

0

PAPI 计数基于线程而不是内核。如果您想要后者,您可能需要考虑使用 intel pcm - 它能够提供每个核心的计数。

它回答了你的问题吗?

tjr

于 2013-04-29T16:06:08.933 回答