A smaller GC benchmark

Leandro Lucarella llucax at gmail.com
Mon Dec 10 15:47:15 PST 2007


Robert Fraser, el 10 de diciembre a las 13:32 me escribiste:
> Vladimir Panteleev wrote:
> >On Mon, 10 Dec 2007 22:48:00 +0200, Robert Fraser <fraserofthenight at gmail.com> wrote:
> >>FWIW, I don't think non-moving GCs will ever be able to outperform a
> >>well-tuned generational collector. But I'm not exactly in the know about
> >>these things, so I may be wrong.
> >I'm not sure if generational collectors are moving GCs, but since you're comparing them to non-moving GCs I'll add that a moving GC needs full 
> >knowledge of type information to work properly. While confusing an integer for a pointer may be a forgiveable mistake for non-moving GCs, it's not for 
> >a moving GC. I think D isn't ready for that yet (especially considered that both Phobos and Tango maintainers/users insist on void[] being a type 
> >that's allowed to hold pointers).
> 
> How would you make a non-moving generational GC? Isn't the idea of the generational GC that long-lived objects are moved into a separate part of 
> memory?

Not exactly. Generation GCs are a particular case of parition based GCs.
Their main feature is the posibility to perform a partial collection,
instead of a full collection, making pause times smaller and, maybe
increasing the cost/benefit ratio (recover as much as memory with the
less processing time cost). You can make some tricks to avoid moving
stuff (which might not be that performant, specially for generational
collectors, but it can be done, and with some other types of partitional
collectors could be very natural).

-- 
Leandro Lucarella (luca) | Blog colectivo: http://www.mazziblog.com.ar/blog/
----------------------------------------------------------------------------
GPG Key: 5F5A8D05 (F8CD F9A7 BF00 5431 4145  104C 949E BFB6 5F5A 8D05)
----------------------------------------------------------------------------
La máquina de la moneda, mirá como te queda!
	-- Sidharta Kiwi



More information about the Digitalmars-d mailing list