Profiling your binary

From ScientificComputing
Jump to: navigation, search

Introduction

Profiling a binary is a way to dynamically analyze a program at runtime in order to identify the parts where its performance can be boosted/improved.

On our HPC clusters, we support the following tools:

Gprof

You can find a good quick tutorial for gprof at gprof quick tutorial

PAPI

PAPI provides you an interface that you can use to instrument and profile your code. PAPI provides ways to get performance counter hardware, which is found in our HPC Clusters. Please have a look at PAPI doc for a documentation about PAPI.

Intel Vtune amplifier xe

Vtune amplifier is a tool that helps you to optimize your program by doing a profiling analysis. It supports command line and graphical user interface (GUI), which requires X11-forwarding to be configured. Tutorials on how you can use it are available in the Intel website vtune

To use Vtune, you need to start an interactive job running on a compute node in order to run the program that you would like to profile.

  • CLI: on the compute node of the interactive job
[sfux@eu-login-38 ~]$ amplxe-cl <-action> program
[sfux@eu-login-38 ~]$ amplxe-gui

and the GUI of intel Vtune will start.