Compiler support to customize the mark and sweep algorithm

  • Authors:
  • Dominique Colnet;Philippe Coucaud;Olivier Zendra

  • Affiliations:
  • LORIA, UMR 7503, INRIA - CNRS - University Henri Poincaré, Campus Scientifique, BP 239, 54506 Vandœuvre-lès Nancy Cedex, France;LORIA, UMR 7503, INRIA - CNRS - University Henri Poincaré, Campus Scientifique, BP 239, 54506 Vandœuvre-lès Nancy Cedex, France;-

  • Venue:
  • Proceedings of the 1st international symposium on Memory management
  • Year:
  • 1998

Quantified Score

Hi-index 0.00

Visualization

Abstract

Mark and sweep garbage collectors (GC) are classical but still very efficient automatic memory management systems. Although challenged by other kinds of systems, such as copying collectors, mark and sweep collectors remain among the best in terms of performance.This paper describes our implementation of an efficient mark and sweep garbage collector tailored to each program. Compiler support provides the type information required to statically and automatically generate this customized garbage collector. The segregation of objects by type allows the production of a more efficient GC code. This technique, implemented in Small Eiffel, our compiler for the object-oriented language Eiffel, is applicable to other languages and other garbage collection algorithms, be they distributed or not.We present the results obtained on programs featuring a variety of programming styles and compare our results to a well-know and high quality garbage collector.