- Abstract:
-
Algorithmic skeletons abstract commonly used patterns of parallel computation, communication, and interaction. Based on the algorithmic skeleton concept, structured parallelism provides a high-level parallel programming technique that allows the conceptual description of parallel programs while fostering platform independence and algorithm abstraction. This work presents a methodology to improve skeletal parallel programming in heterogeneous distributed systems by introducing adaptivity through resource awareness. As we hypothesise that a skeletal program should be able to adapt to the dynamic resource conditions over time using its structural forecasting information, we have developed adaptive structured parallelism (ASPARA). ASPARA is a generic methodology to incorporate structural information at compilation into a parallel program, which will help it to adapt at execution. ASPARA comprises four phases: programming, compilation, calibration, and execution. We illustrate the feasibility of this approach and its associated performance improvements using independent case studies based on two algorithmic skeletons - the task farm and the pipeline - evaluated in a non-dedicated heterogeneous multi-cluster system.
- Links To Paper
- DOI Link (Concurrency and Computation: Practice and Experience)
- Bibtex format
- @Article{EDI-INF-RR-1364,
- author = {
Horacio Gonzalez-Velez
and Murray Cole
},
- title = {Adaptive structured parallelism for distributed heterogeneous architectures: A methodological approach with pipelines and farms},
- journal = {Concurrency and Computation: Practice and Experience},
- publisher = {John Wiley & Sons, Ltd.},
- year = 2010,
- month = {Jan},
- doi = {10.1002/cpe.1549},
- url = {http://dx.doi.org/10.1002/cpe.1549},
- }
|