Using Type Inference to Customize the Garbage Collector in an Object-Oriented Language. The SmallEiffel Compiler

Dominique Colnet 1 Olivier Zendra 1 Philippe Coucaud 1
1 ECOO - Environment for cooperation
INRIA Lorraine, LORIA - Laboratoire Lorrain de Recherche en Informatique et ses Applications
Abstract : Although many garbage collection algorithms can be found in the literature, we think that the efficiency of a collector is closely linked to the quality of its implementation. This paper is not intended to present a new algorithm for garbage collection, but a way to optimize its implementation. In this paper we show how type inference information can help generating an efficient collector customized for each application. At compile time, SmallEiffel produces a mark-sweep collector tailored to the application. For example, the run through the object graph during the mark phase is hard coded thanks to the knowledge of object structure. In order to demonstrate our very good results, we also present a benchmark suite including typical execution patterns. The whole source code of the compiler itself is used as an additional real-size benchmark. We compare our results with two excellent production-level products. The technique we present is applicable to many kinds of collection algorithms, distributed or not.
Document type :
Reports
Complete list of metadatas

https://hal.inria.fr/inria-00098438
Contributor : Publications Loria <>
Submitted on : Monday, September 25, 2006 - 5:01:29 PM
Last modification on : Thursday, January 11, 2018 - 6:19:48 AM

Identifiers

  • HAL Id : inria-00098438, version 1

Collections

Citation

Dominique Colnet, Olivier Zendra, Philippe Coucaud. Using Type Inference to Customize the Garbage Collector in an Object-Oriented Language. The SmallEiffel Compiler. [Intern report] 98-R-196 || colnet98a, 1998, 20 p. ⟨inria-00098438⟩

Share

Metrics

Record views

268