Callgrind配置文件格式包含/自我成本

时间:2012-08-23 21:56:13

标签: profiling file-format kcachegrind callgrind

我正在尝试了解Callgrind配置文件格式。我找到了online description

在我遇到'扩展示例'之前,我认为我理解得很好:

events: Instructions

fl=file1.c 
fn=main
16 20 
cfn=func1 
calls=1 50 
16 400 
cfl=file2.c 
cfn=func2 
calls=3 20 
16 400

fn=func1 
51 100 
cfl=file2.c 
cfn=func2 
calls=2 20 
51 300

fl=file2.c 
fn=func2 
20 700

描述如下:可以看到,在“main”中,只执行第16行的代码,同时调用其他函数。 “主要”的包含成本是420,这是自费20和通话费用之和。

当只有func2的自我成本已经是700时,'main'的包容性成本怎么能是420?

1 个答案:

答案 0 :(得分:1)

好的,描述错误:当我粘贴这个例子并在kcachegrind中打开它时,确实显示总包含成本为820.这是有道理的。对不起噪音。