For what it's worth, here is an overview of how Cyclone's GC works. Using a different type of heap collector seemed to be a good way to allow the runtime to support native threads:
Full disclosure - it is a lot more complicated than a Cheney collector. Cyclone's GC has been stable for awhile now and there are threading examples, but no one has built a large, long-running multithreaded application with it yet. There is probably still some experimentation to be done and tweaks to be made.
Thanks,
Justin