05 May 2023
09:00 Master's Defense IC3 Auditorium
Theme
Parallel Code Profiling for the OpenMP Cluster Task Distributed Runtime
Student
Vitoria Dias Moreira Pinho
Advisor / Teacher
Hervé Cédric Yviquel - Co-advisor: Guido Costa Souza de Araújo
Brief summary
The development of parallel programs is widely used in scientific applications, since this type of application demands high-performance processing. OMPC is a distributed task-based runtime that allows the use of an OpenMP task programming model to parallelize code. Unlike classic OpenMP tasks, OMPC distributes computation across heterogeneous computers, allowing it to exploit both thread and processor parallelism levels, handling MPI communications on its own. Code development is easier as the user does not need to program MPI. It can be challenging to debug and understand parallel code, as the code is running at the same time on different processor cores or even different computers. Profiling tools help users with these issues as they provide information about memory management, data transfers and the events being executed. The user can use the profiling results to realize possible performance improvements or detect errors in parallel applications. However, most of these tools are not designed to serve task-based applications, and users of runtimes such as OMPC face more difficulties. The purpose of this work is to develop a profiling tool to meet the needs of task-based runtimes. This study examined which metrics and functionalities were already offered by existing tools and which ones could be used and improved for applications based on distributed tasks.
Examination Board
Headlines:
Hervé Cédric Yviquel IC / UNICAMP
Carla Osthoff Ferreira de Barros LNCC
Luiz Fernando Bittencourt IC / UNICAMP
Substitutes:
Edson Borin IC / UNICAMP
Daniel de Angelis Cordeiro EACH / USP