Parallel operators

  • Jean-Marc Jézéquel
  • Jean-Lin Pacherie
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 1098)


Encapsulating parallelism and synchronization code within object-oriented software components is a promising avenue towards mastering the complexity of the distributed memory supercomputer programming. However, in trying to give application programmers benefit of supercomputer power, the library designer generally resorts to low level parallel constructs, a time consuming and error prone process. To solve this problem we introduce a new abstraction called Parallel Operators. A Parallel Operator exists simultaneously on all processors involved in a distributed computation: it acts as a single ubiquitous entity capable of processing shared or distributed data in parallel. In this paper we reify this concept in our Eiffel Parallel Execution Environment (EPEE) context, and we show that it is both natural and efficient to express computations over large shared or distributed data structures using Parallel Operators. We illustrate our approach with a Parallel Operator based solution for the well-known N-body problem.


Distribution Data Parallelism Operators Components and Frameworks 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Grady Booch. Object-Oriented Analysis and Design with Applications. Benjamin Cummings, 2nd edition, 1994.Google Scholar
  2. 2.
    J. Dongarra and al. An Object-Oriented Design for High-Performance Linear Algebra on Distributed Memory Architectures. In Proceedings of the Object-Oriented Numerics Conference (OON-SKI'93), 1993.Google Scholar
  3. 3.
    F. Guidec and Y. Mahéo. POM: a Virtual Parallel Machine Featuring Observation Mechanisms. PI 902, IRISA, January 1995.Google Scholar
  4. 4.
    F. Hamelin, J.-M. Jézéquel, and T. Priol. A Multi-paradigm Object Oriented Parallel Environment. In H. J. Siegel, editor, Int. Parallel Processing Symposium IPPS'94 proceedings, pages 182–186. IEEE Computer Society Press, April 1994.Google Scholar
  5. 5.
    J.-M. Jézéquel. EPEE: an Eiffel Environment to Program Distributed Memory Parallel Computers. In ECOOP'92 proceedings, number 611. Lecture Notes in Computer Science, Springer Verlag, (also published in the Journal of Object Oriented Programming, 1993), July 1992.Google Scholar
  6. 6.
    J.-M. Jézéquel. Transparent Parallelisation Through Reuse: Between a Compiler and a Library Approach. In O. M. Nierstrasz, editor, ECOOP'93 proceedings, number 707, pages 384–405. Lecture Notes in Computer Science, Springer Verlag, July 1993.Google Scholar
  7. 7.
    J.-M. Jézéquel. Object Oriented Software Engineering with Eiffel. Addison-Wesley, March 1996. ISBN 1-201-63381-7.Google Scholar
  8. 8.
    J.-M. Jézéquel and J.-L. Pacherie. Shared Objects in KOOPE. Technical Report 2.3, Irisa-Intel ERDP, June 1995.Google Scholar
  9. 9.
    Michael F. Kilian. Object-oriented programming for massively parallel machines. In 1991 International Conference on Parallel Processing, 1991.Google Scholar
  10. 10.
    H. Konaka, T. Tomokiyo, M. Maeda, Y. Ishikawa, and A. Hori. Data parallel programming in the parallel object-oriented language OCore. In Proc. of the Workshop on Object-Based Parallel and Distributed Computation (OBPDC'95), Tokyo, June 1995. Springer-Verlag, LNCS, to be published.Google Scholar
  11. 11.
    Y. Mahéo. Environnements pour la compilation dirigée par les données: supports d'exécution et expérimentations. PhD thesis, IFSIC / Université de Rennes I, juillet 1995.Google Scholar
  12. 12.
    M. Makpangou, Y. Gourhant, J. Le Narzul, and M. Shapiro. Fragmented objects for distributed abstractions. IEEE Software, May 1991.Google Scholar
  13. 13.
    B. Meyer. Object-Oriented Software Construction. Prentice-Hall, 1988.Google Scholar
  14. 14.
    John W. Romein and Henri E. Bal. Parallel n-body simulation on a large-scale homegeneous distributed system. In Peter Magnusson Seif Haridi, Khayri Ali, editor, EURO-PAR'95 Parallel Processing, volume 966 of Lecture Notes in Computer Science, pages 473–484. Springer, August 1995.Google Scholar
  15. 15.
    John K. Salmon and Michael S. Warren. Skeletons from the treecode closet. Journal of Computational Physics, page 24, July 1993.Google Scholar
  16. 16.
    Leslie G. Valiant. A bridging model for parallel computation. CACM, 33(8), Aug 1990.Google Scholar
  17. 17.
    Youfeng Wu. Parallelism encapsulation in C++. In International Conference on Parallel Processing, 1990.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1996

Authors and Affiliations

  • Jean-Marc Jézéquel
    • 1
  • Jean-Lin Pacherie
    • 1
  1. 1.I.R.I.S.A. Campus de BeaulieuRennes CedexFrance

Personalised recommendations