Assignment 2 – What to Do in General
- – You will be given a serial program, called Karman
- – You need to parallelize the Karman code and write a report
- – 80% of the full mark comes from the parallelization using MPI
- – 20% of the mark comes from the parallelization using both MPI and OpenMP (a hybrid approach), i.e., parallelizing the computations in one machine using OpenMP, while parallelizing the computations across machines using MPI
Computer Science, University of Warwick
21
Assignment 2 – Detailed Requirements for Programming
- Parallelize the Karman code, using a pure MPI approach (80% of marks) and a hybrid MPI-OpenMP approach (20% marks)
- Profiling which Karman functions are more time consuming
- Design your decomposition strategy, date exchange strategies between neighboring partitions, the MPI functions (e.g., collective operations)
- For a hybrid approach, design the parallelization strategy for OpenMP
Computer Science, University of Warwick
22
Assignment 2 – Detailed Requirements for Programming
•
•
Benchmarking the execution time of your parallel program as you increase the number of processes
If you develop a hybrid MPI-OpenMP implementation,
benchmark the runtime of OpenMP code
Compare the performance between OpenMP and MPI
Ensure the simulation results are the same after the parallelization
Your parallel program should contain the adequate comments as the evidence of good programming practice.
•
•
• •
Computer Science, University of Warwick
23
Assignment 2 – Requirements for Report
•
•
Profiling the functions to determine which functions are more time consuming; discuss the profiling results
Discuss your MPI implementation, for example,
your decomposition strategy and load balancing strategy;
your strategy of exchanging the boundary data between neighboring partitions;
collective operations you used;
Benchmark the change in execution times of your parallel program as you increase the number of processes; present the results in graph or table
•
• •
•
Computer Science, University of Warwick
24
Assignment 2 – Requirements for Report
•
•
Analyze and discuss the performance of your parallel program
If you develop the hybrid MPI-OpenMP implementation,
Discuss OpenMP implementation
Benchmark the runtime of the OpenMP codes and present the results
Discuss the performance comparison between the hybrid approach and the pure MPI approach
Writing skills: pay attention to spelling, punctuation and grammar
•
• •
•
Computer Science, University of Warwick
25
Assignment 2 – Submission
–
Submit a compressed folder (.zip) to Tabula; the folder should contain
your parallel code (the directory structure used in the project should not change)
your report (pdf format and place your report in the top level directory in the folder)
Deadline: 12pm, March 14th, 2018
–
– –
Computer Science, University of Warwick
26