Exploiting the efficiency of generational algorithms for hardware-supported real-time garbage collection

  • Authors:
  • Sylvain Stanchina;Matthias Meyer

  • Affiliations:
  • University of Stuttgart, Stuttgart, Germany;University of Stuttgart, Stuttgart, Germany

  • Venue:
  • Proceedings of the 2007 ACM symposium on Applied computing
  • Year:
  • 2007

Quantified Score

Hi-index 0.00

Visualization

Abstract

Generational garbage collectors are more efficient than their non-generational counterparts. Unfortunately, however, generational algorithms require both write barriers and write barrier handlers and therefore degrade worst-case performance. In this paper, we present novel hardware support for generational garbage collection. In contrast to previous work, we introduce a hardware write barrier that does not only detect inter-generational pointers, but also executes all related book-keeping operations entirely in hardware. For the first time, write barrier detection and handling occur completely in parallel to instruction execution, so that the runtime overhead of generational garbage collection is reduced to near zero. For evaluation purposes, we extended a system with hardware-supported real-time garbage collection with our hardware support for generational garbage collection. Measurements of Java programs on an FPGA-based prototype show that the generational extensions reduce the total duration of garbage collection activities by a factor of 5 and the memory traffic caused by the collector by a factor of 4 on average.