Improved performance is a major motivation for using parallel computation. However, performance models are frequently used only to predict an algorithm's execution time, not to accurately evaluate how the choices of architecture, operating system, interprocessor communication protocol, and programming language also dramatically affect parallel performance. We have developed an analytic model for synchronous iterative algorithms running on distributed-memory MIMD machines, and refined it for disrete-event simulation. The model describes the execution time of a single run in terms of application parameters such as the number of iterations and the required computation in each, and architectural parameters such as the number of processors, processor speed, and communication time. Our experience has shown us that an analytic model can not only accurately predict an algorithm's performance but can also match the algorithm to an appropriate architecture, identify ways to improve the algorithm's performance, quantify the performance effects of algorithmic or architectural changes, and provide a better understanding of how the algorithm works. >
['Gregory D. Peterson', 'Roger D. Chamberlain']
Beyond execution time: expanding the use of performance models