PerPI: a tool to measure instruction level parallelism

  • Authors:
  • Bernard Goossens;Philippe Langlois;David Parello;Eric Petit

  • Affiliations:
  • DALI Research Team, University of Perpignan, Perpignan cedex, France;DALI Research Team, University of Perpignan, Perpignan cedex, France;DALI Research Team, University of Perpignan, Perpignan cedex, France;DALI Research Team, University of Perpignan, Perpignan cedex, France

  • Venue:
  • PARA'10 Proceedings of the 10th international conference on Applied Parallel and Scientific Computing - Volume Part I
  • Year:
  • 2010

Quantified Score

Hi-index 0.00

Visualization

Abstract

We introduce and describe PerPI, a software tool analyzing the instruction level parallelism (ILP) of a program. ILP measures the best potential of a program to run in parallel on an ideal machine --- a machine with infinite resources. PerPI is a programmer-oriented tool the function of which is to improve the understanding of how the algorithm and the (micro-) architecture will interact. PerPI fills the gap between the manual analysis of an abstract algorithm and implementation-dependent profiling tools. The current version provides reproducible measures of the average number of instructions per cycle executed on an ideal machine, histograms of these instructions and associated data-flow graphs for any x86 binary file. We illustrate how these measures explain the actual performance of core numerical subroutines when measured run times cannot be correlated with the classical flop count analysis.