6 Nov 2010 01:56
Question regarding adding a new generation to mono's GC
Jérôme De Cuyper <jerome.decuyper <at> gmail.com>
2010-11-06 00:56:52 GMT
2010-11-06 00:56:52 GMT
This is my first message on the mono-gc mailing list and I hope I will not break any implicit rule it may have. Otherwise please let me know!
I decided to use my CS thesis as an opportunity to contribute some code to the mono project. Lupus kindly offered the following task:
"we currently have 2 generations: introduce a third one that sits between the nursery and the old generation. It should be a bump-pointer
style generation for fast gen0 collections."
Before starting to dig into the code, I need to justify the change that is proposed. I suppose the purpose of a new generation is to create a group of objects from
a different age in order to recollect as much of them as possible before sending them to the two oldest generations. Is that correct?
Please correct me but I'm guessing the new flow of collection would be as follow:
gen0 - newest objects - bump-pointer based
gen1 - middle aged objects - bump-pointer based (the new generation)
gen2 - oldest generation - size-segregated freelists
gen3 - oldest generation - bump-pointer based
Thank you!
http://www.jdecuyper.com
_______________________________________________ Mono-gc-list maillist - Mono-gc-list <at> lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-gc-list
RSS Feed