Open GoogleCodeExporter opened 9 years ago
It would be really nice if you could post some test program
Original comment by alkondratenko
on 6 Jul 2013 at 11:38
Original comment by alkondratenko
on 14 Jul 2013 at 3:10
I tried to reproduce this with a simple test program, but I couldn't. Looks
like some special unknown pattern of use causes the issue. This happens on a
large closed-source production app.
So, through API, I am getting very low allocated memory size, but process grows
to some insane size.
Is there a way I can at some point print the detailed memory use as seen by
perftools?
What I mean is this: perftools allocates memory either by moving the heap
limit, or by mmapping. Apparently, some mmaps become nearly empty after a
while. I would like to get the list of all such blocks and what does perftools
see as usage number in each of them.
Any way to get such info? Any other suggestion on how to troubleshoot this?
Original comment by yuriv...@gmail.com
on 14 Jul 2013 at 7:47
Have you looked at malloc_extension.h
My guess is that tcmalloc quite brave design with purely per-thread caches can
indeed make some workloads waste tons of memory in thread caches. I'm thinking
about threads that may go idle for large periods of time.
There's in fact two methods in malloc_extension.h that may help in that case.
And a ton of diagnostic methods too.
Original comment by alkondratenko
on 13 Sep 2013 at 7:42
Original issue reported on code.google.com by
yuriv...@gmail.com
on 10 Jun 2013 at 1:48