我已经用“ -g -O2
”构建了我的程序并运行了valgrind
+cachegrind。我不确定如何解释输出。这是输出:
http://daviddoria.com/Uploads/callgrind.CacheMisses
我的“整个程序”是InpaintingAlgorithm
“主要”的 98.4% 的功能。到目前为止,一切都很好。现在看看InpaintingAlgorithm
92.9% 的被调用者InpaintingAlgorithm
是LinearSearchKNNProperty::operator()
. 这是我的“内循环”,我再次期待大量的时间花在这里。
现在这是我感到困惑的地方。看看 的被调用者LinearSearchKNNProperty::operator()
,真的什么都没有??最大的函数只有7.64%,其余的<0.25%。我不明白所有被调用者的总和如何只增加了大约 8%。剩下的 92% 在哪里?(大概是我要找的东西让它跑得更快!)
如果有人能指出我在阅读这些结果时的错误,我将不胜感激!