[Gc] Faster to not call GC_free?

Andrew Haley aph at redhat.com
Mon Jun 11 03:47:12 PDT 2007


Hans Boehm writes:
 > I should also have mentioned that debug allocation is sometimes
 > attrociously slow, at least if the collector is configured to store stack
 > traces in objects.  Recent collector versions tend to use the libc
 > backtrace function for that when available.  At least on some X86 linux
 > systems those don't seem to cache previously computed information, and are
 > thus MUCH slower than they need to be.  I think the correct fix here
 > belongs into libc.

Probably so, yes.  Valgrind suffered even more acutely from this
problem until it implemented caching for a subset of stack unwind
information.  Maybe we can share code from that project, or get some
of it into libc.  libgcj has the same problem of slow stack unwinding,
which can account for upwards of 25% runtime on some code bases.

Andrew.

-- 
Red Hat UK Ltd, Amberley Place, 107-111 Peascod Street, Windsor, Berkshire, SL4 1TE, UK
Registered in England and Wales No. 3798903


More information about the Gc mailing list