[gclist] Using VM hardware for GC

Mark Stuart Johnstone markj@cs.utexas.edu
Sat, 24 May 1997 14:20:45 -0500

I've recently become interested in the issues involved with using an
OS's VM hardware to support generational garbage collection.  I looked
over the work by Hosking, Hudson, and Moss, and they pretty much seem
to put the question to rest by pointing out that the costs of scanning
a VM page are larger than the win by using the VM hardware for the
write-barrier.  They also argue that these costs will only get higher
as page size increases.  However, they don't address the possibility
of the hardware providing sub-page protection.

So, what I am wondering is could a processor built with sub-page
protection (and the corresponding OS support) be more efficient than a
software only approach?  If so, any guesses as to what granularity of
protection would be optimal?  I realize that the frequency of
mutations has a lot to do with this issue.  I am currently most
interested in Java as a target language.

Any comments or discussion would be welcome, as would any pointers to
papers on this subject that I might have missed.

E-mail: markj@cs.utexas.edu      WWW: http://www.cs.utexas.edu/users/markj
Recent papers on memory allocation and garbage collection are available by
anonymous ftp from ftp.cs.utexas.edu in /pub/garbage (See the README file).