A GCM-based runtime support for parallel grid applications

The usage of grid resources to execute non-embarrassingly parallel application raises a number of issues users must deal with, like heterogeneity of resources, scalability and performance. Loosely coupled component-based approaches have already been proved to provide a very flexible support to address heterogeneous and widely distributed environments, but at a cost of decrease in overall performance, due to the component layer. As such, this approach, suitable for coupled grid applications, might seem not to be directly applicable to develop non-embarrassingly parallel applications In this paper, we present extensions to the collective interfaces of the EU CoreGRID Grid Component Model (the GCM), to support advanced multi-point component interactions at different coupling levels. We also present the usage of these extensions on a component-based runtime that supports an SPMD API. This API is specified in the context of the DiscoGrid Project, which promotes a parallel SPMD programming approach with new concepts of advanced hierarchical and collective communications, specific for the development and execution of domain-decomposition scientific applications in grids. Experiments have shown that the introduced extensions can provide very flexible and scalable support to develop grid applications. The results obtained with DiscoGrid Runtime and the Poisson3D application are also very promising as they show that the combination of the hierarchical SPMD programming approach and the component-based Runtime can lead to high performance grid-aware scientific applications.

[1]  Christian Pérez,et al.  Improving MPI Support for Applications on Hierarchically Distributed Resources , 2007, PVM/MPI.

[2]  José C. Cunha,et al.  Grid Computing: Software Environments and Tools , 2005 .

[3]  Joel H. Saltz,et al.  Interoperability of data parallel runtime libraries , 1997, Proceedings 11th International Parallel Processing Symposium.

[4]  Françoise Baude,et al.  A Component-Oriented Support for Hierarchical MPI Programming on Multi-Cluster Grid Environments , 2007, 19th International Symposium on Computer Architecture and High Performance Computing (SBAC-PAD'07).

[5]  Henri E. Bal,et al.  MagPIe: MPI's collective communication operations for clustered wide area systems , 1999, PPoPP '99.

[6]  Karsten Schwan,et al.  XChange: coupling parallel applications in a dynamic environment , 2004, 2004 IEEE International Conference on Cluster Computing (IEEE Cat. No.04EX935).

[7]  Matthieu Morel Components for grid computing , 2006 .

[8]  Denis Caromel,et al.  Interactive and descriptor-based deployment of object-oriented grid applications , 2002, Proceedings 11th IEEE International Symposium on High Performance Distributed Computing.

[9]  Michael M. Resch,et al.  An Extension to MPI for Distributed Computing on MPPs , 1997, PVM/MPI.

[10]  Ian T. Foster,et al.  MPICH-G2: A Grid-enabled implementation of the Message Passing Interface , 2002, J. Parallel Distributed Comput..

[11]  Vaidy S. Sunderam,et al.  Failure Resilient Heterogeneous Parallel Computing Across Multidomain Clusters , 2005, Int. J. High Perform. Comput. Appl..

[12]  Yogesh L. Simmhan,et al.  On Building Parallel & Grid Applications: Component Technology and Distributed Services , 2004, Proceedings of the Second International Workshop on Challenges of Large Applications in Distributed Environments, 2004. CLADE 2004..

[13]  Li Zhang,et al.  Seine: a dynamic geometry‐based shared‐space interaction framework for parallel scientific applications , 2006, Concurr. Comput. Pract. Exp..