Collection of tools for performance analysis
Context
Parallel applications can be analyze using tracing tools such as EZTrace. These tools collect events (eg. calls to MPI functions, or OpenMP constructs, etc.) during the application execution, and the resulting execution traces can be analyzed to reveal performance bugs.
As part of a collaborative research project, we develop EasyTraceAnalyzer, a generic trace analysis tool that processes various kinds of traces, and implement
several performance analysis techniques (for instance, bottleneck detection).
several performance analysis techniques (for instance, bottleneck detection).
Goal of this internship
This internship aims at designing a set of demonstrator tools that rely on EasyTraceAnalyzer and that can be used for understanding how a parallel application behaves. We envision the following list of tools (which may be expended or shrunk depending on how the intership goes):
- Creating a communication matrix from MPI events
- Dumping the list of MPI communications that match a set of filters (tag, source rank, length, etc.)
- Creating a profile that lists the most time consuming functions from a trace
Keywords: HPC, MPI, performance analysis
Work conditions
- Open-source development in C++
- The internship will take place at Télécom SudParis in Evry or in Palaiseau (in the same building as Télécom Paris) – 19 place Marguerite Perey, 91120 Palaiseau
- Due to the current confinement, the internship may start remotely