Garbage collection for monitoring parametric properties

Dongyun Jin, Patrick O.Neil Meredith, Dennis Griffith, Grigore Rosu

Research output: Chapter in Book/Report/Conference proceedingConference contribution


Parametric properties are behavioral properties over program events that depend on one or more parameters. Parameters are bound to concrete data or objects at runtime, which makes parametric properties particularly suitable for stating multi-object relationships or protocols. Monitoring parametric properties independently of the employed formalism involves slicing traces with respect to parameter instances and sending these slices to appropriate non-parametric monitor instances. The number of such instances is theoretically unbounded and tends to be enormous in practice, to an extent that how to efficiently manage monitor instances has become one of the most challenging problems in runtime verification. The previous formalism-independent approach was only able to do the obvious, namely to garbage collect monitor instances when all bound parameter objects were garbage collected. This led to pathological behaviors where unnecessary monitor instances were kept for the entire length of a program. This paper proposes a new approach to garbage collecting monitor instances. Unnecessary monitor instances are collected lazily to avoid creating undue overhead. This lazy collection, along with some careful engineering, has resulted in RV, the most efficient parametric monitoring system to date. Our evaluation shows that the average overhead of RV in the DaCapo benchmark is 15%, which is two times lower than that of JavaMOP and orders of magnitude lower than that of Tracematches.

Original languageEnglish (US)
Title of host publicationPLDI'11 - Proceedings of the 2011 ACM Conference on Programming Language Design and Implementation
Number of pages10
StatePublished - 2011
Event32nd ACM SIGPLAN Conference on Programming Language Design and Implementation, PLDI'11 - San Jose, CA, United States
Duration: Jun 4 2011Jun 8 2011

Publication series

NameProceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI)


Conference32nd ACM SIGPLAN Conference on Programming Language Design and Implementation, PLDI'11
Country/TerritoryUnited States
CitySan Jose, CA


  • aspect-oriented programming
  • debugging
  • garbage collection
  • runtime monitoring
  • runtime verification
  • testing

ASJC Scopus subject areas

  • Software


Dive into the research topics of 'Garbage collection for monitoring parametric properties'. Together they form a unique fingerprint.

Cite this