VMAD: A virtual machine for advanced dynamic analysis of programs

Alexandra Jimborean, Matthieu Herrmann, Vincent Loechner, Philippe Clauss

Research output: Chapter in Book/Report/Conference proceedingConference PaperOtherpeer-review

5 Citations (Scopus)


Runtime code analysis and optimization is becoming a main strategy used to face the ever extending and changing variety of processor architectures and execution environments that an application can meet. Particularly with the advent of multicore processors, efficient program optimizations, such as adaptive and speculative parallelism, require accurate and advanced runtime analyses, which inevitably incur a time overhead that has to be minimized. In this paper, we present VMAD, a virtual machine (VM) that handles x86-54 binary files, which are especially tailored at compile time to include instructions and data for code instrumentation and for the VM. VMAD enables low level profiling initiated by the programmer from the source code, through the insertion of a dedicated pragma delimiting the regions of interest. This approach provides the programmer a direct view of the actual execution behavior of the source code. To our knowledge, VMAD is the first proposal providing low-level instrumentation initiated from the source code, with almost negligible runtime overhead.

Original languageEnglish
Title of host publicationISPASS 2011 - IEEE International Symposium on Performance Analysis of Systems and Software
EditorsRajeev Balasubramonian
Place of PublicationPiscataway NJ USA
PublisherIEEE, Institute of Electrical and Electronics Engineers
Number of pages2
ISBN (Print)9781612843681
Publication statusPublished - 2011
Externally publishedYes
EventIEEE International Symposium on Performance Analysis of Systems and Software 2011 - Austin, United States of America
Duration: 10 Apr 201112 Apr 2011


ConferenceIEEE International Symposium on Performance Analysis of Systems and Software 2011
Abbreviated titleISPASS 2011
Country/TerritoryUnited States of America

Cite this