Description
Introduction
In this assignment you are asked to parallelize a piece of code using OpenMP pragmas and also to optimize your parallel code. The sequential source code for parallelization can be found on Quercus in the exercise.cpp program. The sequential code contains timing calls for the code of interest.
Replace the sequential code of interest with a (correct) parallel code, time it, report the speedup. You are encouraged to repeat this exercise, in order to improve your parallel code and to analyze the performance of the versions of parallel code.
Deliverables
You are allowed to work individually or in teams of 2 or 3.
Please submit an exercise.tar.gz file where you include 1. your code where your code versions are placed in separate functions i.e., solution1, solution2, etc. and also 2. a report in which you analyze the speedup of your parallelized and optimized code compared to the performance of the sequential code.
Please include in the report the (correct) versions of the parallel code that you wrote for the purposes of analysing the performance (only the piece of code you are asked to parallelize please). Explain the sources of the speedup of each version of your code compared to the sequential version and discuss any trade-offs thereof. Please remember to include the names of all the members of your team in your report. Please submit your tar ball as instructed below to be graded.
Account Information
I recommend you work on the ug machines located in the GB 243 lab. They are accessible by ssh — hostnames are ugxyz.eecg.toronto.edu (ug250 for instance is one of those machines). The
ug machines run Debian; they are multicore and have plenty of RAM.
If you do not have an account, please send an email to Tim Trant at tim@eecg.toronto.edu regarding accounts on these machines – mentioning your need for the account for the ECE 1747 class. Please copy the code I provided into your account and measure your code execution time on one of the ug machines.
When you are ready, submit your work by running the command below on one of the ug machines:
submitece1747f 2 exercise.tar.gz