next up previous contents
Next: HPFacts Up: Data Distribution Previous: Other Mappings

 

HPF Programming Issues

HPF is always a trade-off between parallelism and communication,

It is fairly easy to write a correct HPF program but it is an awful lot harder to write an efficient one. The technique is more or less:

  1. write a correct serial version of the intended HPF program, test and debug,
  2. add distribution directives so as to generate the minimum number of communications in pursuit of the solution.

Data locality it the key - well chosen alignment and distribution strategies will enhance performance significantly.

Programmers should always add as many directives as possible: always add INDEPENDENT directives where correct, always align things explicitly and so on.

The most important factor is to obtain a good parallel algorithm, many serial algorithms are wholly inappropriate for HPF programs.

Return to corresponding overview page gif  

Badly written programs will result in poor execution speeds:

Return to corresponding overview page gif


next up previous contents
Next: HPFacts Up: Data Distribution Previous: Other Mappings

©University of Liverpool, 1997
Wed May 28 20:20:27 BST 1997
Not for commercial use.