|
From: Doug R. <df...@nl...> - 2004-03-08 09:35:24
|
On Monday 08 March 2004 01:00, Jeremy Fitzhardinge wrote: > On Fri, 2004-03-05 at 18:22, Josef Weidendorfer wrote: > > Hi, > > > > I just tried Calltree to get working with Valgrind CVS. > > The version can be found at > > http://kcachegrind.sourceforge.net/calltree-0.9.7.tar.gz > > > > It is almost working fine with using "--pointercheck=3Dno", but for > > large programs I get the follow error when the valgrind process > > grows over 160M in size: > > Yes, the heap size for Valgrind is set to a relatively small value.=20 > The idea is that if a tool needs to allocate large chunks of memory, > it could use the shadow memory pool. For most tools, this is sized > by a well-understood ratio to the client memory size - but for > calltree this doesn't necessarily make a lot of sense. > > We could increase the Valgrind heap size pretty easily, but it eats > into the available client address space. > > How does Calltree use memory? What does it allocate? I recently had problems with valgrind running out of memory loading the=20 debug information for a program which loaded a large number of shared=20 libraries, all of which had lots of C++ debugging information. We ended=20 up re-arranging things to give valgrind more memory for malloc. =46rom a quick reading of the code, we seem to only decode type=20 information for stabs. Does anything actually use the type information?=20 It certainly seems to take up a lot of space. |