3

我正在尝试解决一些内存泄漏,并且我正在使用 jemalloc 转储堆配置文件: MALLOC_CONF=prof:true,lg_prof_interval:30,lg_prof_sample:17

很有魅力,但我不知道我在看什么:)

jemaloc堆分析是否显示所有(采样的)分配,或者只是那些在转储时没有被 free()-ed 的分配?或者换一种说法:它是分配配置文件,还是“实时”块配置文件?

4

1 回答 1

3

我的理解是默认情况下,jeprof 显示在写入转储时“实时”的分配。但是,您可以更改它。

prof_accum如果要记录所有分配,请参阅 jeprofile选项:http: //jemalloc.net/jemalloc.3.html#opt.prof_accum

您可能还需要--alloc_spacejeprof 标志来显示分配的字节而不是正在使用的字节:https ://github.com/jemalloc/jemalloc/blob/dev/bin/jeprof.in#L208

于 2017-01-15T23:59:28.877 回答