M578 - Alexiades
                      Lab 4
          Parallelizing your serial 1D code from Lab3

1. The outline_MPI file contains the basic MPI function syntax and an outline of how they are used. Read it !

2. Here are detailed steps for parallelizing your serial code
  Read ALL OF IT to see the whole story (and may want to print it out).

3. Then start doing, step by step, on a coarse mesh, MM=4 or 8.
  Stick to the instructions, and use same variable names... you can be creative later...
  Your parallelized code should produce identical results with your serial code!
  Try MM = 64, 128, 256, 512, ... on nWRs = 2 , 4 , 8 , ...

4. When it does, in a text file "Lab4.txt" insert:   Name, Date, Lab4
  and which machine(s) you made the run on ( uname -a )
  ================================================= (separator line)
  a. max errors from a run with MM=256 (dx=1/256) on nWRs= 4 workers.
  ================================================= (separator line)
  b. timing on 2 and 4 and 8 workers (value of "MR timing" from each run), don't expect speed-up!

  Upload "Lab4.txt" on Canvas.

  c. Create a dir (folder) "Lab4", copy into it ONLY the essential files of your code ( z.* , Makefile , dat )

  Then zip Lab4 (and its contents) to a ZIP file "Lab4.zip" and upload it on Canvas.
There are many things involved, many things can go wrong...
...nobody said parallelizing is easy...
...But once you get it working, next time will be a breeze (relatively speaking...)!
Try to get it right the first time... debugging is very hard...
               !!! GOOD LUCK !!!