Memoised Garbage Collection for Software Model Checking

  • Authors:
  • Viet Yen Nguyen;Theo C. Ruys

  • Affiliations:
  • RWTH Aachen University, Germany;University of Twente, The Netherlands

  • Venue:
  • TACAS '09 Proceedings of the 15th International Conference on Tools and Algorithms for the Construction and Analysis of Systems: Held as Part of the Joint European Conferences on Theory and Practice of Software, ETAPS 2009,
  • Year:
  • 2009
  • MoonWalker: Verification of .NET Programs

    TACAS '09 Proceedings of the 15th International Conference on Tools and Algorithms for the Construction and Analysis of Systems: Held as Part of the Joint European Conferences on Theory and Practice of Software, ETAPS 2009,

Quantified Score

Hi-index 0.00

Visualization

Abstract

Virtual machine based software model checkers like jpf and MoonWalker spend up to half of their verification time on garbage collection. This is no surprise as after nearly each transition the heap has to be cleaned from garbage. To improve this, this paper presents the Memoised Garbage Collection (MGC ) algorithm, which exploits the (typical) locality of transitions to incrementally perform garbage collection. MGC tracks the depths of objects efficiently and only purges objects whose depths have become infinite, hence unreachable. MGC was experimentally evaluated via an implementation in our model checker MoonWalker and benchmarks using the parallel Java Grande Forum benchmark suite. By using MGC , a performance increase up to 78% was measured over the traditional Mark&Sweep implementation.