VMAD: an Advanced Dynamic Program Analysis & Instrumentation Framework

Abstract : VMAD (Virtual Machine for Advanced Dynamic analysis) is a platform for advanced profiling and analysis of programs, consisting in a static component and a runtime system. The runtime system is organized as a set of decoupled modules, dedicated to specific instrumenting or optimizing operations, dynamically loaded when required. The program binary files handled by VMAD are previously processed at compile time to include all necessary data, instrumentation instructions and callbacks to the runtime system. For this purpose, the LLVM compiler has been extended to automatically generate multiple versions of the code, each of them tailored for the targeted instrumentation or optimization strategies. The compiler chooses the most suitable intermediate representation for each version, depending on the information to be acquired and on the optimizations to be applied. The control flow graph is adapted to include the new versions and to transfer the control to and from the runtime system, which is in charge of the execution flow orchestration. The strength of our system resides in its extensibility, as one can add support for various new profiling or optimization strategies, independently of the existing modules. VMAD's potential is illustrated by presenting several analysis and optimization applications dedicated to loop nests: instrumentation by sampling, dynamic dependence analysis, adaptive version selection.
Type de document :
Communication dans un congrès
M. O'Boyle. CC - 21st International Conference on Compiler Construction, Mar 2012, Tallinn, Estonia. Springer, 7210, pp.220-237, 2012, Lecture Notes in Computer Science
Liste complète des métadonnées

https://hal.inria.fr/hal-00664345
Contributeur : Philippe Clauss <>
Soumis le : lundi 30 janvier 2012 - 13:44:28
Dernière modification le : vendredi 12 janvier 2018 - 01:10:57

Identifiants

  • HAL Id : hal-00664345, version 1

Collections

Citation

Alexandra Jimborean, Luis Mastrangelo, Vincent Loechner, Philippe Clauss. VMAD: an Advanced Dynamic Program Analysis & Instrumentation Framework. M. O'Boyle. CC - 21st International Conference on Compiler Construction, Mar 2012, Tallinn, Estonia. Springer, 7210, pp.220-237, 2012, Lecture Notes in Computer Science. 〈hal-00664345〉

Partager

Métriques

Consultations de la notice

351