HPCToolkit is an open-source suite of multi-platform tools for profile-based performance analysis of applications. The figure provides an overview of the toolkit components and their relationships.

The toolkit components include:

  • hpcrun: a tool for profiling executions of unmodified application binaries using statistical sampling of hardware performance counters.
  • csprof: a tool for collecting call path profiles of optimized application binaries.
  • bloop: a tool for analyzing application binaries to recover program structure; namely, to identify where loops are present and what program source lines they contain.
  • hpcprof: a tool for interpeting sample-based execution profiles and relating them back to program source lines.
  • hpcview: a tool for correlating program structure information, multiple sample-based performance profiles, and program source code to produce a performance database.
  • hpcviewer: a java-based GUI for exploring databases consisting of performance information correlated with program source.

Supported platforms: Pentium+Linux, Opteron+Linux, Athlon+Linux, Itanium+Linux.
Platforms under development: Cray XT (Opteron + Catamount or Compute Node Linux), IBM Blue Gene.

HPCToolkit is open-source software released with a BSD-like license.

Page last updated 26 Sept 2007