FAQ for Homework #3

Q1. What behaviour is expected when the growing cells touch the boundaries of the grid?

A. You can make the cells "wraparound" i.e. you can consider the grid as a torus. OR you can consider cells outside the grid borders as dead and grow the cells inside the grid accordingly. *Either* way is fine.

Q2. Where is the final data file for the performance numbers?

A. Please read the instructions to get the file (max.dat). Also read the homework questions for the kind of measurements you have to do using this file. Press the "refresh" button in your browser to clear out the cached copies :)

Q3. What kind of performance numbers are required?

A. You are required to run the test file (max.dat) for a 1000x1000 grid for 2000 generations on 1, 2, 4, 6, 8 processors. Plot the computation time for OpenMP and MPI versions of your program. Also, communication time is not required Computation time should include the total time taken to run the program excluding the time taken for reading and writing of input and output files respectively.

Q4. What is expected in the report?

A. Apart from the requirements mentioned in the homework question, your report may/should/can try to answer questions such as:
· What kind of Communication/Computation tradeoff did you observe?
· Were you able to achieve a high-degree of overlap between communication and computation? If so, what kind of communication patterns (e.g using non-blocking I/O) did you employ?
· Some theoretical analysis of the number of messages exchanged, the load balancing factor, etc.
· Additional performance charts verifying the above.

Q5. I can't figure out how to run jobs on DataStar. Help!!

A. Please read this

Q6. Is visualization required as part of the assignment?

A. NO. It is just there to help you debug/enjoy your program.