Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
OProfile 在平面报告中给出的样本,是函数本身的样本,还是函数本身的样本加上它调用的函数的样本?我试图查看文档、教程,但找不到具体的答案。我的感觉是它是自我的样本,更准确地说,是 CPU 为函数体执行指令而不是在它调用的函数中执行指令时的样本数。
从文档中很难判断,但是如果您打开了堆栈采样,似乎说堆栈上的每个返回地址都被视为程序计数器样本。如果它这样做,那么时间将包括在内,只要它正确处理递归。
为了正确处理递归,如果一个函数在一个样本上出现多次,它应该只计算一次。
此外,我无法从文档中判断样本是否在 I/O 或睡眠期间暂停,它们不应该如此,除非你想对这些视而不见。