GC overhead (Re: GCC 3.3, GCC 3.4)

Ziemowit Laski zlaski@apple.com
Tue Feb 4 01:14:00 GMT 2003


On Monday, Feb 3, 2003, at 14:41 US/Pacific, Matt Austern wrote:

>
> On Monday, February 3, 2003, at 02:30  PM, Geoff Keating wrote:
>>> Matt Austern at Apple did similar experiment by using ggc 
>>> placeholder.
>>> (same interface as ggc, no collection, allocate memory using mmap in
>>> chunks and
>>> satisfy memory allocation requests from these chunks etc..).
>>>
>>> He got around ~12% speedup for sample c++ source.
>>
>> To be precise, Matt found that the speedup of using the ggc
>> placeholder was about equivalent to the speedup of using ggc-page but
>> disabling garbage collection.  This contradicts the results that Tim
>> Josling got above.
>
> Yes.  That's why I haven't been pushing to have a mode in which
> gc is entirely removed: my measurements suggest that the most
> important way in which gc introduces overhead is the most obvious
> one: the collection phase itself takes time.

Yes, and furthermore, if you look at the data I posted here last week,
you'll see that a single collection phase takes no more time in 3.3
than it did in 3.2.1.  Also, just today I did an experiment where
I replaced selected ggc_alloc() calls with xmalloc() calls (with _no_
corresponding xfree() calls); this resulted in a slight slow-down of the
compiler. :-(

So, I'm comfortable in concluding that GC per se is _not_ the issue 
here.

--Zem
--------------------------------------------------------------
Ziemowit Laski                 1 Infinite Loop, MS 301-2K
Mac OS X Compiler Group        Cupertino, CA USA  95014-2083
Apple Computer, Inc.           +1.408.974.6229  Fax .5477



More information about the Gcc mailing list