Skip to Main content Skip to Navigation

PACO++: A parallel object model for high performance distributed systems

Christian Pérez 1 Thierry Priol 1 André Ribes 1
1 PARIS - Programming distributed parallel systems for large scale numerical simulation
IRISA - Institut de Recherche en Informatique et Systèmes Aléatoires, ENS Cachan - École normale supérieure - Cachan, Inria Rennes – Bretagne Atlantique
Abstract : With the availability of high bandwidth wide area networks, it is nowadays feasible to couple several computing resources --- supercomputers or PC clusters --- together to obtain a high performance distributed system. The question is to determine a suitable programming model that provides transparency, interoperability, reliability, scalability and performance. Since such distributed systems appear as a combination of distributed and parallel systems, it is very tempting to extend programming models that were associated to distributed or to parallel systems. Another choice is to combine the two different worlds into a single coherent one. A parallelism oriented model appears more adequate to program parallel codes while a distributed oriented model is more suitable to handle inter-code communications. We have designed the concept of parallel CORBA object to address this issue. It extends the CORBA specification with the notion of parallel object. A parallel CORBA object is a collection of CORBA object with a Single Program Multiple Data (SPMD) execution model. This paper deals with PACO++ , a portable implementation of the concept of parallel CORBA object. It examines how the different design issues have been tackled with. For example, scalability is achieved between two parallel CORBA objects by involving all members of both collections in the communication. Early experiments with a 1 Gbit/s WAN show scalable performance: an aggregated bandwidth of 874 Mbit/s has been obtained between two parallel CORBA objects made of twelve nodes each. Such a performance has been obtained while preserving the semantics of CORBA. For example, parallel CORBA objects are interoperable with standard CORBA objects via a proxy mechanism. Only the implementer of a parallel CORBA object and parallel-aware clients have to deal with parallel issues. PACO++ is currently used as the high performance object platform for several multiphysics applications like hydrology and aircraft simulations.
Document type :
Complete list of metadatas

Cited literature [14 references]  Display  Hide  Download
Contributor : Rapport de Recherche Inria <>
Submitted on : Tuesday, May 23, 2006 - 6:18:19 PM
Last modification on : Friday, July 10, 2020 - 4:21:05 PM
Long-term archiving on: : Sunday, April 4, 2010 - 8:16:52 PM


  • HAL Id : inria-00071619, version 1


Christian Pérez, Thierry Priol, André Ribes. PACO++: A parallel object model for high performance distributed systems. [Research Report] RR-4960, INRIA. 2003. ⟨inria-00071619⟩



Record views


Files downloads