In this assignment, you will parallelize the Jacobi iterative method using MPI for execution on bridges supercomputer. The program skeleton are given as jacobi.c file. Row-wise decomposition of the 2-dimensional matrix should be applied for decomposing the computation of Jacobi method among all MPI processes. Please check course lecture Dense Matrices and Decomposition for row-wise decomposition.
The program skeleton are given as jacobi.c file. Please read the source code first to understand the algorithm and how it implemented. The code and function you need to implement are commented as TODO
. There are three TODO items and the grade distribution for the TODO items are in the following grading section. You free to use codes in MPI Examples and internet resources for this assignmenment. But you solutions must be within the provided jacobi.c code and you should not make significant changes to the program other than implementing the three TODO items.
The commands to compile and run the programs on the development machine are as follows:
mpicc jacobi.c -lm -o jacobi
mpirun -np 4 ./jacobi #Only for development machine in Swearingen
You can only use mpirun
to execute the program on the development machine. On bridges, you need to use sbatch
to submit the MPI job. Check next section for details. The source code also tells you how to give different parameters (e.g. matrix size) for the jacobi method.
Your development can be done in any machine that has the MPI tools and environment setup, including those in Swearingen 1D39 and 3D22 for MPI development. In this assingment, if you want to report your performance results, you should use Bridges supercomputer from PSC. Please check batch job submission on XSEDE PSC Bridges Supercomputer section for details about how to submit a sbatch
MPI job to bridges for MPI execution.
Your submission should be a single zipped file named LastNameFirstName.zip that includes ONLY the following: jacobi.c ands one optional PDF file for your report. Please remove all other files, including the executables, Excel sheet, etc. The source file contains your implementation, and should be compiled to generate executable.
The report is max 3-page PDF document that includes the following. The report for this assignment is optional, 20 bonus points will be given for a complete report.
x
processes, will be automatically calculated based on the numbers in executime time table. The two figures will be automatically populated and generated by Excel as well. Please include those figures in your report.Function implementation: 100 points for the three TODO items,
1. TODO #1: 25
2. TODO #2.a: 10
3. TODO #2.b: 20
4. TODO #2.c: 20
5. TODO #3: 25
For source file that cannot be compiled, you only receive max 60% of function implementation points. For compliable, but with execution errors or incorrectness, you receive max 80% of function implementation points.
Report: 20 bonus points.