Pin - A Binary Instrumentation Tool - PinPoints
Detailed modeling of the performance of large applications is difficult. Applications can take a very long time to run on real hardware and it is impractical to simulate them to completion on modern, detailed performance models. Furthermore, some applications have complex execution environments that cannot easily be reproduced on a simulator, so properly setting up the applications to run on a variety of simulators can be difficult. The PinPoints methodology addresses these problems using the well-known SimPoint tool to determine representative portions of an application to simulate, and Pin to avoid tedious and error-prone application setup altogether. The resulting representative simulation regions, called PinPoints, can then be used for simulation and performance projection instead of simulating the entire application. This results in a drastic reduction in simulation time. Further, by using the Pin-based program-capture and deterministic replay framework called PinPlay we guarantee repeatability of PinPoints for single and multi-threaded programs.
- See SPEC page high-lighting PinPoints research.
- SPEC2006 PinPoints pinballs available from UGhent.
- PinPoints methodology works with Intel® Software Development Emulator (Intel SDE) now (since version 7.45). Please download the SDE/PinPlay scripts package and extract it at the root of an SDE kit (version 7.45 or higher). This has only been tested with Linux* SDE kit.
PinPoints tools/scripts are distributed with the PinPlay kit (Linux only). See one of the tutorials below for more details.
- SimPoint : Automatically Characterizing Large Scale Program Behavior; Timothy Sherwood, Erez Perelman, Greg Hamerly and Brad Calder. In proceedings of the 10th International Conference on Architectural Support for Programming Languages and Operating Systems, October 2002.
- PinPoints: Pinpointing Representative Portions of Large Intel® Itanium® Programs with Dynamic Instrumentation; Patil, H., Cohn, R., Charney, M., Kapoor, R., Sun, A., and Karunanidhi, A. In Proceedings of the 37th Annual IEEE/ACM international Symposium on Microarchitecture (Portland, Oregon, December 04 - 08, 2004). [Nominated for best paper award ]
- PinPlay: A Framework for Deterministic Replay and Reproducible Analysis of Parallel Programs; Harish Patil, Cristiano Pereira, Mack Stallcup, Gregory Lueck, James Cownie. CGO 2010. [ CGO 2010 Best Paper Award Winner ]