Homework 3: Parallel LU

The purpose of this assignment is to give you exercise on implementing parallel LU factorization.

MIT students are welcome to use our Beowulf cluster or any other cluster at their disposal.

Take a look at Beowulf instructions for an introduction on using our class Beowulf.

Use of the PBS system is mandatory .


You are reminded to start on the homework early. Late homework will not be accepted, no matter what your reason is.

Instructions for submission:

For our sanity's sake, please follow the submission procedure:

Part I: Parallel LU

Part I: Parallel LU

Implement the parallel LU factorization on a matrix of size 2000x2000 (randomly generated). You either MATLAB*P mm mode or C/FORTRAN with MPI for this problem.

Your code should work for row distribution, column distribution, and 2D block cyclic distribution. You can write 3 separate routines if you so prefer.

How do you make it work for 2D block cyclic you may ask? Read about the 2D block cyclic distribution on this webpage, and note that 2D block cyclic is nothing more than a row and column shuffle (permutation). So if B is the matrix A arranged in the form of 2D block cyclic, then B = P*A*Q', where P Q are permutation matrices.

2D block cyclic distribution could be hard. Try to finish row and col first.


Ron Choy
Last modified: Sun Feb 9 22:32:13 GMT 2003