[OT] GC without paging
renoX
renosky at free.fr
Thu Aug 30 14:15:12 PDT 2007
Hello,
this is not strictly related to D, but as D's runtime have a GC, I
thought it can be useful to show an interesting research on GCs.
Traditional GCs perform poorly when memory gets tight: some of the page
managed by the GC gets evicted to the disk by the Virtual memory Manager
(VM) of the OS, but when the GC does a garbage collection run, it will
swap in the evicted page which will cause the VM to evict another page, etc.
The Bookmarking Collector (BC) is a GC which communicates with the VM to
select the page to evict to avoid this memory trashing, it necessitates
a (small) patch to the OS so that the VM and the GC can communicate, but
the results are impressive compared to traditional GCs when there is
memory pressure: improved runtime and reduced pause (even if BC is not a
realtime GC).
Here's the link to the video presentation (too bad, the questions at the
end are difficult to hear):
http://content.digitalwell.washington.edu/msr/external_release_talks_12_05_2005/12631/lecture.htm
And the paper:
http://www.cs.umass.edu/~emery/pubs/f034-hertz.pdf
BC is a moving memory GC implemented in a JVM, so the results are not
directly applicable to D, there's a non-moving variant of BC studied in
the paper it gets nearly as good runtime as BC, but the pause are not as
good.
I hope some of you will find this interesting.
Regards,
renoX
More information about the Digitalmars-d
mailing list