This paper presents a technique for backpatching instructions in an SMP environment. This technique is used by the Jalapeno virtual machine to support dynamic class loading in Java. There is a small runtime overhead the first time a backpatch site is executed. Thereafter, it executes at the same speed as equivalent sites not requiring back-patching.
Detailed modeling of the performance of commercial applications is difficult. The applications can take a very long time to run on real hardware and it is impractical to simulate them to completion on performance models. Furthermore, these applications have complex execution environments that cannot easily be reproduced on a simulator, making porting the… (More)
Instrumentation is one tool for collecting the information needed to understand programs. Instrumentation-based tools typically insert extra code into a program to record events during execution. 1-4 The cost of executing the extra code can be as low as a few cycles, enabling fine-grained observation down to the instruction level. Pin 2 (www.pintool.org) is… (More)