kcachegrind:如何绘制完整的调用图?

kcachegrind: How to draw the full call graph?

我喜欢 kcachegrind 的调用图。但是我无法让它绘制完整的调用图。

我想我只需要设置:

  1. 图表 > 来电者深度 > 无限制
  2. 图表 > 被调用方深度 > 无限制
  3. 图表 > 最小值节点成本 > 无最低值
  4. 图表 > 最小值通话费用 > 无最低限额

1 和 2 很简单。 3 在菜单中,但显示为灰色。 4 不在菜单中。

有没有办法让它以图形方式显示完整的调用图?

答案就在source code (line 2794):

a = addNodeLimitAction(m, tr("No Minimum"), 0.0);
// Unlimited node cost easily produces huge graphs such that 'dot'
// would need a long time to layout. For responsiveness, we only allow
// for unlimited node cost if a caller and callee depth limit is set.
a->setEnabled((_maxCallerDepth>=0) && (_maxCalleeDepth>=0));

因此您必须将其他两个选项设置为 'unlimited' 以外的值。