gprof 中难以理解的名称

unintelligable names in gprof

我正在尝试使用 来分析我编写的程序,但收到了无法理解的结果。大多数函数名称都以 _abfcd96687bed377dcecdf193c89698 的形式出现。我相信它们来自我链接的第三方库,我没有源代码,所以我无法重新编译它进行分析。

我想了解这些函数的来源,因为其中一个函数占我 运行 时间的 17%,我想看看是否可以减少调用该函数的次数未知功能。

我能够使用 确定相关函数是第三方库的一部分。

原始 callgrind.out 文件包含程序中的函数列表。其中包括作为每个函数的 运行ning 的一部分调用的函数。

使用它,我能够从有问题的函数中追溯,直到我找到库中的一个函数 API。

至于优化的目标,占用我大部分 运行 时间 (>75%) 的 API 函数不能被调用更少的次数。这使得很难(尽管并非不可能)发现其他热点。