我在profiler输出中看到的__nss_passwd_lookup()调用是什么?

时间:2017-01-03 13:00:06

标签: c++ linux linux-kernel gperftools

我正在使用gperftools来分析使用GCC 5.4.0(带-O3)编译的C ++应用程序。

代码经过高度优化,因此我在输出中看不到很多分支,但是有一个名为 __ nss_passwd_lookup()的分支,这需要花费大量时间:

enter image description here

我唯一的猜测是它与内存分配有关。

操作系统:Ubuntu 16.04 x86_64,内核:4.8。

1 个答案:

答案 0 :(得分:0)

glibc中的某些汇编函数偶尔会出现此问题(例如memcpy或memset)。考虑安装libc6-dbg包。另外,请尝试golang版本的pprof工具(去获取github.com/google/pprof)。