Tutorial:HPCA 2013 PinPoints

From Sniper
Revision as of 11:16, 28 November 2012 by Tcarlson (talk | contribs)
Jump to navigation Jump to search

Deterministic PinPoints: Representative and Repeatable Simulation Region Selection with PinPlay and Sniper

Location and Date

We will give a tutorial on PinPoints at HPCA 2013 in Shenzhen, China. The tutorial is scheduled for Saturday, February 23.

Organizers and Presenters

Harish Patil, Intel Corporation and Trevor E. Carlson, Ghent University.

Abstract

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 a dynamic instrumentation framework called Pin to avoid tedious and error-prone application setup altogether. 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.

This tutorial is targeted at researchers and practitioners interested in simulating performance of large applications. The objective of this tutorial is to describe, in detail, the entire process of profiling large applications, finding representative regions (PinPoints) for simulation, check-pointing them, and simulating the check-points using various performance models in a popular simulator Sniper. The desired pre-requisite knowledge is a familiarity with the Pin dynamic instrumentation system.

Topics to be Covered

  • Techniques for sampling for simulation (including SimPoint)
  • Introduction to Pin, PinPlay, and Sniper
  • Instructions for downloading Sniper and a Pin kit with PinPlay extension (the first public release of PinPlay).
  • Description of the process of finding and check-pointing representative simulation regions (PinPoints).
  • Modifications necessary for Pin-based simulators to read check-points for PinPoints, with a detailed walkthrough example in Sniper.
  • Techniques for evaluating quality of region selection with results from Sniper-based simulations.