Overview
As high-end computers move from offering thousands of processors to tens and hundreds of thousands of processors, users are increasingly challenged to find additional parallelism in their application in order to effectively utilize them. When a single parallel activity doesn't scale sufficiently, it would be desirable to be able to launch many distinct parallel tasks, each using a subset of the available processors. This type of programming goes by many names, including multi-level parallelism, multiple-program multiple-data (MPMD), multi-tasking, etc. Traditional parallel programming models provide only the most basic support for this kind of programming, if they provide any support at all.
The dynamic nature and the encapsulation provided by the component approach maps quite naturally to the concepts of MPMD programming. The goal of the MCMD Working Group is to define, develop, and deploy a high-level infrastructure for MCMD programming in a CCA environment.
Contacts and Communications
Working Group Chairs: Jarek Nieplocha and
Manojkumar Krishnan, PNNL
Mailing list: https://www.cca-forum.org/mailman/listinfo/mcmd-wg
Activities
- 2007-01-24 MCMD Mini Workshop, Snoqualmie, WA
- 2007-04-20 MCMD BOF, Salt Lake City, UT
- 2007-07-20 MCMD BOF, Silver Springs, MD (slides: ppt, pdf)
Working Documents
MCMD Team API Proposal:
MCMD Software:
Protoype implementation of the Team API can be
download here.
MCMD Use Cases:
- Hierarchical Parallelism in Numerical Hessian Algorithm (Chemistry)
- Coop Parallelism
- Ab Initio Nuclear Structure Calculations
- Coupled Climate Modeling
- Molecular Dynamics, Multiphysics Simulations
- Space Weather Modeling
Additional Use Cases in Preparation:
- SWIM Integrated Plasma Simulator (Fusion; Foley, Bernholdt, Bramley)
- Another potential Nuclear Structure Calculation use-case (Bernholdt)
- FACETS - integrating core, edge and wall modeling of fusion reactors (Fusion, Shasharina, Wang)
Recommended Readings
- Thomas Rauber , Gudula Rünger, Library support for hierarchical multi-processor tasks, Proceedings of the 2002 ACM/IEEE conference on Supercomputing, p.1-10, November 16, 2002, Baltimore, Maryland
- Henri E. Bal , Matthew Haines, Approaches for Integrating Task and Data Parallelism, IEEE Concurrency, v.6 n.3, p.74-84, July 1998
- George S. Almasi, Cǎlin Caşcaval, José G. Castaños, Monty Denneau, Wilm Donath, Maria Eleftheriou, Mark Giampapa, Howard Ho, Derek Lieber, José E. Moreira, Dennis Newns, Marc Snir, Henry S. Warren, Jr., Demonstrating the scalability of a molecular dynamics application on a Petaflop computer, Proceedings of the 15th international conference on Supercomputing, p.393-406, June 2001, Sorrento, Italy
- Soumen Chakrabarti , James Demmel , Katherine Yelick, Modeling the benefits of mixed data and task parallelism, Proceedings of the seventh annual ACM symposium on Parallel algorithms and architectures, p.74-83, June 24-26, 1995.
- T. Rauber, and G. Rünger. Tlib - A Library to Support Programming with Hierarchical Multi-Processor? Tasks. In Journal of Parallel and Distributed Computing, vol. 65, no. 3, pp. 347-360, 2005.
- H. Jin, G. Jost, J. Yan, E. Ayguade, M. Gonzalez, and X. Martorell, "Automatic Multilevel Parallelization Using OpenMP," Proceedings of EWOMP, 2001.
- Fan Chan, Jiannong Cao, Alvin T.S. Chan, and Minyi Guo, "Programming Support for MPMD Parallel Computing in ClusterGOP", IEICE Transactions on Information and Systems. Vol. E-87D, No. 7, pp. 1693--1702, 2004.
- Manojkumar Krishnan, Yuri Alexeev, Theresa L. Windus and Jarek Nieplocha, Multilevel Parallelism in Computational Chemistry using Common Component Architecture. accepted to Supercomputing 2005, Seattle, WA
- Jay Larson, Robert Jacob, and Everest Ong,"The Model Coupling Toolkit: A New Fortran90 Toolkit for Building Multiphysics Parallel Coupled Models," International Journal of High Performance Computing Applications, 19, 277-292 (2005).
- Robert Jacob, Jay Larson, and Everest Ong, "M x N Communication and Parallel Interpolation in Community Climate System Model Version 3 Using the Model Coupling Toolkit," International Journal of High Performance Computing Applications, 19, 293-307 (2005).
- Anthony P. Craig, Robert Jacob, Brian Kauffman, Tom Bettge, Jay Larson, Everest Ong, Chris Ding, and Yun He,"CPL6: The New Extensible, High Performance Parallel Coupler for the Community Climate System Model," International Journal of High Performance Computing Applications, 19, 309-327 (2005).
- F. Bertrand, R. Bramley, K.B. Damevski, J.A. Kohl, D.E. Bernholdt, J.W. Larson, and A. Sussman, "Data Redistribution and Remote Method Invocation for Coupled Components," Journal of Parallel and Distributed Computing, 66(7), 931-946 (2006). doi:10.1016/j.jpdc.2005.12.009
- Raicu, I., Zhang, Z., Wilde, M., Foster, I., Beckman, P., Iskra, K., and Clifford, B. 2008. Toward loosely coupled programming on petascale systems. In Proceedings of the 2008 ACM/IEEE Conference on Supercomputing DOI= http://doi.acm.org/10.1145/1413370.1413393. Paper
...