Hi Phil,

I also want to mention that the GC only compacts the heap whenever it thinks
that the heap is already too fragmented. Most of the time he only collects
dead objects without moving around anything. Also collecting may be done by
only walking through gen0. Whenever a reference in gen1, gen2 or any other
root is changed to point to an object in gen0, it gets especially marked.
That's another performance boost. Maybe google can turn up more details.

There was a guest lecture about Heap Reference Analysis on my Uni in April.
The lecturer more precisely defined when an object may be considered as dead
(i.e. not when there are no references anymore but as soon as the runtime
knows that the reference won't be used anymore).
It makes an interesting read:
http://www.cse.iitb.ac.in/~uday/soft-copies/etaps-08-dfa.pdf

Thomas


-------------------------------------------------------------------------
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services for
just about anything Open Source.
http://sourceforge.net/services/buy/index.php
_______________________________________________
SharpOS-Developers mailing list
SharpOS-Developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/sharpos-developers

Reply via email to