OProfile在平面报告中给出的样本,它们是函数本身的样本,还是函数本身的样本加上它调用的函数的样本?我试着查看文档,教程但找不到具体的答案。我的感觉是,它是自我的样本,更确切地说,当CPU执行函数体的指令而不是它调用的函数时的样本数。
答案 0 :(得分:0)
很难从文档中看出来,但是如果你打开了堆栈采样,似乎可以说堆栈上的每个返回地址都被视为一个程序计数器样本。 如果它这样做,那么时间将是包容性的,提供它正确处理递归。
要正确处理递归,如果某个函数在样本上出现多次,则只应计算一次。
此外,我无法从文档中判断样本是否在I / O或睡眠期间暂停,这些样本不应该是暂停的,除非您想对这些样本视而不见。