[Vm-dev] Looking for resources explaining Spur GC

Clément Bera bera.clement at gmail.com
Mon May 8 09:52:01 UTC 2017


Hi Yuriy,

There is one main paper about Spur, but it focuses on forwarding objects /
become:
A Partial Read Barrier for Efficient Support of Live Object-Oriented
Programming
https://hal.inria.fr/hal-01152610/file/partialReadBarrier.pdf

Spur's scavenger is an implementation of this paper:
Generation Scavenging, A Non-disruptive, High-Performance Storage
Reclamation Algorithm
David Ungar

The tenuring policy is an implementation of this paper:
An adaptive tenuring policy for generation scavengers
David Ungar & Frank Jackson
+ some new features not described in papers

In addition,
I wrote a "Spur GC overview" here:
https://clementbera.wordpress.com/2017/03/12/tuning-the-pharo-garbage-collector/
Eliot wrote some blog post about Spur, but it focuses on object
representation and forwarding objects, not on the GC.

Else there is a very good book about GC by Richard Jones and Antony Hosking
(best book about GC according to many VM implementors):
https://www.amazon.com/Garbage-Collection-Handbook-Management-Algorithms/dp/1420082795/ref=sr_1_1?s=books&ie=UTF8&qid=1494236960&sr=1-1&keywords=garbage+collection+handbook

Lastly, don't hesitate to ask questions on the GC on this mailing list or
to read the class comment in VMMaker (SpurMemoryManager class comment for
instance) :-)

On Mon, May 8, 2017 at 11:16 AM, Yuriy Tymchuk <yuriy.tymchuk at me.com> wrote:

>
> Hi everyone,
>
> I am assisting in teaching a compiler construction course in the
> University of Bern. On the last lecture students learned about the basic
> ideas of garbage collection which was exemplified on Pharo/Squeak. However
> I found the slides a bit outdated as they explained mark and sweep as well
> as basic tenuring. To my knowledge Spur is more complicated as it has the
> scavenger garbage collector, has multiple generations of objects, etc. Is
> there any presentation of a paper describing how GC works in Spur? Because
> some students want to learn more (as well as myself).
>
> Also excuse me please if I wrote something stupid :) I’m not an expert in
> VMs, but I want to learn.
>
> Cheers.
> Uko
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.squeakfoundation.org/pipermail/vm-dev/attachments/20170508/55e50fbd/attachment-0001.html>


More information about the Vm-dev mailing list