Task Based Parallelization using a top-down approach
Location: Barcelona Supercomputing Center (BSC) – Barcelona, Spain
Project Abstract:
The project will consist of the analysis of the potential parallelism of an application with Tareador, its porting to the OmpSs programming model and performance analysis and fine tuning with performances tools.
Tareador provides a very intuitive approach to visualize different parallelization strategies and understand their implications. The programmer needs to use simple code annotations to identify tasks and Tareador will dynamically build the computation task graph, identifying all data-dependencies among the annotated tasks. Tareador also feeds Dimemas, a simulator to predict the potential of the proposed strategy and visualize an execution timeline (Paraver).
Using the environment, a top-down approach can be followed that leads to appropriate parallelization strategies (task decomposition and granularity) and helps to identify tasks interactions that need to be guaranteed when coding the application in parallel.
OmpSs is a task based programming model, which can be seen as an extension of the OpenMP model. Unlike OpenMP, however, task dependencies are determined at runtime thanks to the directionality of data arguments. The OmpSs runtime supports asynchronous execution of tasks on heterogeneous systems such as SMPs, GPUs and clusters thereof. Also, the integration of OmpSs with MPI facilitates the migration of current MPI applications and improves, automatically, the performance of these applications by overlapping computation with communication between tasks on remote nodes.
Finally, the student will be able to use the performance analysis tool Paraver to detect application bottlenecks and improve them.
Project Mentor: Rosa M. Badia
Site Co-ordinator: Renata Giménez Binder
Learning Outcomes:
- The student will learn to use different tools to identify potential parallelism, program parallel programming applications and to do performance analysis of parallel applications.
Student Prerequisites (Compulsory):
- Good level of programming in C/C++
- Linux at user-level
Student Prerequisites (Desirable):
- Familiar with parallel programming models
Training Materials:
Tareador material
http://pm.bsc.es/SC12_training_session/
OmpSs training material:
http://www.project-text.eu/content/training
Paraver training material:
http://www.bsc.es/computer-sciences/performance-tools/documentation
Project Application Reference: Spain – BSC – Task Based Parallelization
Applications are now closed