The simultaneous exploitation of task and data parallelism is often beneficial for the execution of computation-intensive applications on large parallel machines with a distributed address space, since the concurrent execution of independent program parts may significantly reduce the communication overhead. This article outlines the realization of a programming environment to support the development of programs with mixed task and data parallelism, emphasising the use of transformations for generating efficient target programs using MPI. We explore the characteristics of several approaches for such an environment, and discuss their strengths and weaknesses. We discuss an approach based on a functional coordination specification, and show how the final imperative target program can be generated by several transformation steps.
Citation:
John O?Donnell, Thomas Rauber, Gudula Rünger, "Functional Realization of Coordination Environments for Mixed Parallelism," ipdps, vol. 8, pp.177a, 18th International Parallel and Distributed Processing Symposium (IPDPS'04) - Workshop 7, 2004