The objective of this MP is to transform traditional loops of a Fortran/C program into an equivalent parallel form using the OpenMP extensions.
The development machine is newton.cse.uiuc.edu. The OpenMP implementation from KAI may be found in /home/cse/cse302/cse302/class. Add the path /home/cse/cse302/cse302/class/bin to your PATH environment variable. For convenience add it to your .login (something like: set path=($path /home/cse/cse302/cse302/class/bin)). The compiler is called guidef77/guidec for Fortran 77 and C respectively. A debugger for OpenMP is also present: assuref77 (Fortran 77) and assurec (C). The manuals can be found in the directory /home/cse/cse302/cse302/class/docs. To invoke the compiler/debugger use: <compiler/debugger> <program_file> which will produce an a.out file. Further usage can be found in the manuals.
For this MP we shall use the program mp1.f (Fortran)/mp1.c (C) which can be found in /home/cse/cse302/cse302/class/mp1. Both represent the same program in two different languages. You can work on whichever version you prefer.
The program is an implementation of the LU decomposition of a matrix (for non-singular matrices) alongwith a permutation matrix. This is then used to find the solution to the standard linear equation A·x = D . You have to convert the loops to a parallel form. The credit you receive will be in accordance with the number of loops you parallelize.
Instructions for handing the MP will be posted on the web page shortly.