Formally efficient program instrumentation

  • Authors:
  • Boris Feigin;Alan Mycroft

  • Affiliations:
  • Computer Laboratory, University of Cambridge;Computer Laboratory, University of Cambridge

  • Venue:
  • RV'10 Proceedings of the First international conference on Runtime verification
  • Year:
  • 2010

Quantified Score

Hi-index 0.00

Visualization

Abstract

The term "instrumentation" refers to modification of a program or its runtime environment to make hidden details of execution visible. Instrumentation can severely compromise program execution speed. Frameworks like DTrace (Sun Microsystems) and VProbes (VMware) offer practical ways of addressing performance concerns, but there has been no formal understanding of what it means for instrumentation to be efficient. To fill this gap, we propose a criterion based on that of Popek and Goldberg for virtual machines and on our previous work relating this to Jones optimality of program specializers. We further suggest linguistic constraints on instrumentation code to enable more aggressive static optimization of dynamically instrumented programs.