[gclist] Purify Find new leaks performance / Real GC performance

boehm.PARC@xerox.com boehm.PARC@xerox.com
Mon, 26 Feb 1996 09:38:42 PST


I don't have measurements.  But the general experience is that overall program
execution time with a conservative collector isn't much different from
malloc/free execution time, at least if you've done even minimal retuning of
the code for garbage collection.  Detlefs, Dosser, and Zorn measured an average
slowdown of 21% without retuning.  (There are examples on which either one is
faster by a factor of 10.  I haven't yet encountered a case in which
malloc/free was faster by anywhere near a factor of 10, and the problem wasn't
easily fixable.)

I would guess there are several reasons Purify leak detection is relatively
slow:

- Some of the other overhead to catch out of bounds references may still be
there.

- To detect leaks promptly, you want to run collections more frequently.

- There's less motivation to make a leak detector fast.  The code may not have
been well-tuned.

Hans