Practical work with  MPI

Practical work with simple codes on a cluster. Avoiding dead locks in message
passing programs.

Have  a look at the exercise and download the templates for first and for accu.
  1. untar the template in a different subdirectory than the sequential example
  2. cd first.template
  3. make run
    1. Avoid warnings causes by OpenMPI:
      make run  2>&1 | grep -v openmpi
  4. You can swich between GNU- and Intel-compiler by changing the line (not supported currently)
    in the Makefile
  5. The following targets/calls are available in the Makefile:
    1. make           :  Compiles and links the code
    2. make run     :  Recompiles the whole code and runs it
    3. make cache :  Profiles the code wrt. cache performance
    4. make prof    :  Profiles the code
    5. make mem   :  Checks the code for correct data accesses, pointers alloc/deallocs, memory leaks
    6. doc               :  Generates documentation, see html/index.html  afterwards
    7. clean            :  Cleans temporary files
    8. clean_all      :  Cleans everything
    9. tar                :  Cleans everything and packs the remainding files into a tar-file in the root directory
Available compilers: MPI: