Predicting the Performance of Scientific Applications on Distributed Memory Multiprocessors.
Porting scientific applications to parallel machines is one of the major challenges for scientists and computing professionals over the coming years. Existing codes span many thousands of lines and are often converted for parallel execution by someone other than the original author. Good tools are required to assist this process as much as possible. Two key design parameters that must be addressed on distributed memory computers are the way that parallel data structures are distributed across the machine and the way that processes are allocated to processors. The paper describes a tool called DCompose, which allows a user to rapidly determine the effect of different data decomposition and process allocation strategies. Using DCompose, important design decisions can be made before the translation of the program is started, and before the target platform is chosen