Sciweavers

IWMM
2009
Springer

Scalable support for multithreaded applications on dynamic binary instrumentation systems

14 years 6 months ago
Scalable support for multithreaded applications on dynamic binary instrumentation systems
Dynamic binary instrumentation systems are used to inject or modify arbitrary instructions in existing binary applications; several such systems have been developed over the past decade. Much of the literature describing the internal architecture and performance of these systems has focused on executing single-threaded guest applications. In this paper, we discuss the specific design decisions necessary for supporting large, multithreaded applications on JIT-based dynamic instrumentation systems. While implementing a working solution for multithreading is straightforward, providing a system that scales in terms of memory and performance is much more intricate. We highlight the design decisions in the latest version of the Pin dynamic instrumentation system, including the just-in-time compiler, the emulator, and the code cache. The overall design strives to provide scalable performance and memory footprints on modern applications. Categories and Subject Descriptors D.3.4 [Programming ...
Kim M. Hazelwood, Greg Lueck, Robert Cohn
Added 27 May 2010
Updated 27 May 2010
Type Conference
Year 2009
Where IWMM
Authors Kim M. Hazelwood, Greg Lueck, Robert Cohn
Comments (0)