A.1. Introduction

Several of Acumem's customers are running large systems and clusters. Consequently there is a demand for sampling and analyzing MPI applications. The process of sampling an MPI application requires the user to create a script that enables mpirun to start the sampler for each rank it initiates, but is otherwise identical to the process employed for other applications. If no script is used mpirun itself will be sampled, which is clearly not the desired behavior. The difference in sampling is outlined in the figure below.

MPI Sampling Overview

Figure A.1. MPI Sampling Overview


From the point of view of the sampler, the MPI layer will appear like any other library. Its memory behavior will be assessed together with the rest of the application. This means that Acumem Freja will look at memory access patterns and complain about poor memory usage of relevant parts of the application, as well as the MPI library.

Judging communication speed and patterns, node imbalances or general effectiveness of the actual MPI-communication is however not within the scope of the Acumem Freja analysis.