<html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"></head><body dir="auto"><div>Hi Marcel,</div><div><div><br></div>On Apr 7, 2016, at 8:11 AM, marcel.taeumel &lt;<a href="mailto:Marcel.Taeumel@hpi.de">Marcel.Taeumel@hpi.de</a>&gt; wrote:<br><br></div><blockquote type="cite"><div><span></span><br><span>Hi Eliot,</span><br><span></span><br><span>where should volunteers start to read and understand the GC-related parts in</span><br><span>the VM?</span><br></div></blockquote><div><br></div>1. build a VMMaker image following the instructions in&nbsp;<a href="http://www.mirandabanda.org/cogblog/build-image/">http://www.mirandabanda.org/cogblog/build-image/</a><div><span style="background-color: rgba(255, 255, 255, 0);">2. read the class comment for SpurMemoryManager</span></div><div><span style="background-color: rgba(255, 255, 255, 0);">3. guided by the message protocols in&nbsp;SpurMemoryManager, drill down into the compaction algorithm, free space lists, etc</span></div><div><span style="background-color: rgba(255, 255, 255, 0);">4. Bring questions to vm-dev</span></div><div><span style="background-color: rgba(255, 255, 255, 0);"><br></span></div><div><span style="background-color: rgba(255, 255, 255, 0);">There are good papers on concurrent Mark-sweep. &nbsp;I have two in my desk (references soon).</span></div><div><span style="background-color: rgba(255, 255, 255, 0);">ClĂ©ment has an idea for a compaction scheme that makes sense. &nbsp;We would need to discuss the idea here.</span></div><div><span style="background-color: rgba(255, 255, 255, 0);"><br></span></div><div><span style="background-color: rgba(255, 255, 255, 0);">I would prefer volunteers that have already completed a masters, or have equivalent experience. &nbsp;But note that the Spur GC is (AFAIA) unique in supporting "lemming" debugging, the scheme to run the GC in a copy of the entire heap so that if there are bugs one simply takes other copys and debugs using the copy, instead of either trying to construct a reproducible case or trying to work backwards from a corrupted heap. &nbsp;There's also a full leak checker, many assertions, etc. &nbsp;so the development experience is pretty good.</span></div><div><span style="background-color: rgba(255, 255, 255, 0);"><br></span><blockquote type="cite"><div><span></span><span>Best,</span><br><span>Marcel</span></div></blockquote><span style="background-color: rgba(255, 255, 255, 0);"><br>_,,,^..^,,,_ (phone)</span><div><br><blockquote type="cite"><div><span></span><br><span>--</span><br><span>View this message in context: <a href="http://forum.world.st/Too-many-full-GCs-in-Cog-Spur-while-just-drawing-GUI-tp4888823p4888885.html">http://forum.world.st/Too-many-full-GCs-in-Cog-Spur-while-just-drawing-GUI-tp4888823p4888885.html</a></span><br><span>Sent from the Squeak VM mailing list archive at <a href="http://nabble.com">Nabble.com</a>.</span><br></div></blockquote></div></div></body></html>