我试图弄清楚 pprof 如何计算我的 Go 应用程序输出中每个节点的 %cum。我附上了我的 pprof png 输出的一部分,以强调我试图找出pprof png 输出的问题 在 pprof 输出的这一部分中有两个节点:
节点 A) 运行时扫描对象 -
持平=1.06s %持平=5.54%
兼=1.64s %兼=8.57%
节点 B)运行时 findobject(由 scanobject 调用)-
持平=0.46s %持平=2.4%
兼=0.54s %兼=2.82%
不管如何计算累积 A,这些数字总和不等于 func A 累积(1.64 秒):
A 平 + B 平 = 1.06s + 0.46s = 1.52s
A flat + B cum = 1.06s + 0.54s = 1.6s
可以解释这种差异的一件事是 pprof 丢弃小于 0.10 秒的累积,因此可能是 pprof 输出中缺少与节点 A 相关的次要函数。如果这是根本原因,我想知道是否有办法告诉 pprof 进行完整的 pprof 输出
谢谢