Jeprof показывает общую память

У меня сложилось впечатление, что если jeprof будет использоваться для анализа дампов профиля кучи, он предоставит график вызовов для использования памяти CURRENT, а не общего использования памяти с момента запуска процесса ( аналогичный вопрос для jeprof)

Вот мой MALLOC_CONF:

MALLOC_CONF="prof:true,prof_prefix:dump.out,lg_prof_interval:30,lg_prof_sample:17"

Тем не менее, когда я использую Jeprof для анализа дампов кучи следующим образом:

jeprof <process executable> dump.out.<pid>.*

[...]  
Using local file dump.out.18743.240.i240.heap.  
Using local file dump.out.18743.238.i238.heap. 
Using local file dump.out.18743.237.i237.heap. 
[...]

Welcome to jeprof!  For help, type 'help'.
(jeprof) top
Total: 795605.8 MB  **<--- This is too BIG!**
378078.3  47.5%  47.5% 378078.3  47.5% 0x00007f0e9b828f97
 58901.9   7.4%  54.9%  58901.9   7.4% 0x00007f0e9bd482a3
 57485.9   7.2%  62.1%  57485.9   7.2% 0x00007f0e9b8eb769
 48944.9   6.2%  68.3%  48944.9   6.2% 
 47512.3   6.0%  74.3%  47512.3   6.0% 0x00007f0e9c0cc3bf
 35355.2   4.4%  78.7%  35355.2   4.4% 0x00007f0e9be64982
 33037.1   4.2%  82.9%  33037.1   4.2% std::string::_Rep::_S_create
 29623.4   3.7%  86.6%  29623.4   3.7% 0x00007f0e9b8ac005
 18240.1   2.3%  88.9%  18240.1   2.3% 0x00007f0e9bf4a033
 16515.1   2.1%  91.0%  16515.1   2.1% gsh_calloc@4d644a

Процесс занимал только 2-3G памяти в то время. Так отслеживает ли Jeprof все распределения с начала? Как получить текущую разбивку использования памяти?

0 ответов

Другие вопросы по тегам