2 回答
TA贡献1848条经验 获得超6个赞
平 和 暨
假设有一个函数foo,它由3个函数和一个直接操作组成。
func foo(){
a() step1
b() step2
do something directly. step3
c() step4
}
想象一下,当你调用 function 时foo,需要 6 秒,时间分布如下。
func foo(){
a() // step1 takes 1s
b() // step2 takes 1s
do something directly. // step3 takes 3s
c() // step4 takes 1s
}
flat 将是在 step3 上花费的时间。
cum将是 foo 的总执行时间,其中包含子函数调用和直接操作。(cum = step1+ step2+ step3+ step4)
和%
当您top在 pprof 控制台中运行时,每一行输出代表在特定功能上花费的时间。Sum%表示前几行花费了多少时间/内存。
为了解释这个指标,我选择了另一个包含更多行的例子。的值sum%对于所述线是45.17%。它是这样计算的:
line1 19.33%
line2 13.27%
line3 6.60%
line4 5.97%
-----------
sum% 45.17%
sum%的应用
sum%
可以帮助您快速识别大石头。下面是另一个内存分配报告的例子。
可以看到前四个函数消耗了 91.06% 的内存。如果我想做一些性能调优,我应该专注于前四个功能。可以忽略第四个以下的所有功能。
- 2 回答
- 0 关注
- 199 浏览
添加回答
举报