GC Milestone reached!

I’m happy to announce that today I finished debugging the new generational garbage collector and have committed it to trunk!

This is a proud day as the VM is really starting to mature into a great system, and everyone is really pitching in to create a great ruby engine!

For those that are curious, the generational GC (genGC) uses a baker copy collector for the young objects and a mark/sweep collector for the old objects. Currently, an object is promoted to the old space once it has an age of 7 (the tenure age). An objects age goes up each time it survives a collection of the young space.

Soon, I’ll add the ability to tune the tenure age. I’m thinking about adding a config file to the VM so there is a single place to tune these kind of values.

2 thoughts on “GC Milestone reached!

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s