30 points
This assignment is to be completed individually.
Using OMP directives, create parallelized versions of the matrix multiplcation, mandelbrodt and 2d heat equation programs.
Sources:
Reference: OMP C/C++ pragma directive reference ( pdf )
For each problem, run your program using 1,2,4 and 8 threads and at least the following problem sizes:
N=200,400,600
For each problem plot the timing results as:
Time vs. # of threads
Speedup vs. problem size
On each graph, plot the theorectical linear speedup for reference.
A hardcopy report containing:
For each problem
the directives you used and a brief explanation
supporting your choice
Speed-up data
Speed-up data plots
Source Code with directives highlighted ( place
all source code at the end of the report )
Comments & Conclusions
EXTRA CREDIT A:
Use dynamic scheduling omp directives to attempt to improve the speedup of the mandelbrodt calcualation.
Include a section in your report labeled Extra Credit A containing:
EXTRA CREDIT B:
For either the heat equation: Create a client /server application consisting of a master process running on a bgsu machine (alpha, sigma, sci-xxx) which spawns a slave on the OSC origin. The slave process will compute several iterations of the heat equation solution in parallel using omp directives. The slave will send the results back to the bgsu machine for display using X-Windows. See instructor for more details if interested.