This is the mail archive of the guile@cygnus.com mailing list for the guile project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

GC write barriers



Here's a paper discussing various write barriers, in VM and in
software.  (Thanks to Tom Tromey for the pointer.)
ftp://ftp.cs.colorado.edu/pub/cs/techreports/zorn/CU-CS-494-90.ps.Z

%A Benjamin G. Zorn
%T Barrier Methods for Garbage Collection
%R Technical Report CU-CS-494-90
%I Department of Computer Science, University of Colorado, Boulder,
Colorado
%D Revised, August 1992
%X Available by anonymous FTP and e-mail from ftp.cs.colorado.edu in the
file pub/cs/techreports/zorn/CU-CS-494-90.ps.Z (compressed PostScript)
%X "Garbage collection algorithms have been enhanced in recent years with
two methods: generation-based collection and Baker incremental copying
collection.  Generation-based collection requires special actions
during certain store operations to implement the ``write barrier.''
Incremental collection requires special actions on certain load
operations to implement the ``read barrier.''  This paper evaluates
the performance of different implementations of the read and write
barriers and reaches several important conclusions.  First, the
inlining of barrier checks results in surprisingly low overheads, both
for the write barrier (2--6%) and the read barrier (< 20%).
Contrary to previous belief, these results suggest that a Baker-style
read barrier can be implemented efficiently without hardware support.
Second, the use of operating system traps to implement garbage
collection methods results in extremely high overheads because the
cost of trap handling is so high.  Since this large overhead is
completely unnecessary, operating system memory protection traps
should be reimplemented to be as fast as possible.  Finally, the
performance of these approaches on several machine architectures is
compared to show that the results are generally applicable."