The IWIM model for coordination of concurrent activities

  • Farhad Arbab
Regular Papers
Part of the Lecture Notes in Computer Science book series (LNCS, volume 1061)


Exploiting the full potential of massively parallel systems requires programming models that explicitly deal with the concurrency of cooperation among very large numbers of active entities that comprise a single application. In practice, the concurrent applications of today essentially use a set of ad hoc templates to coordinate the cooperation of their active components. This shows the lack of proper coordination languages that can be used to explicitly describe complex cooperation protocols in terms of simple primitives and structuring constructs.

In this paper we present a generic model of communication and describe a specific control-oriented coordination language based on this model. The important characteristics of this model include compositionality, which it inherits from the data-flow model, anonymous communication, and separation of computation concerns from communication concerns. These characteristics lead to clear advantages in large concurrent applications.

1991 CR categories

D3.3 D.1.3 D.3.2 F.1.2 I.1.3 

1991 AMS subject classification

68N99 68Q10 

Keywords and phrases

concurrency parallel computing coordination languages MIMD models of communication 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    F. Arbab, “Coordination of massively concurrent activities,” Tech. Rep. CS-R9564, Centrum voor Wiskunde en Informatica, Kruislaan 413, 1098 SJ Amsterdam, The Netherlands, 1995.Google Scholar
  2. 2.
    C. Hoare, Communicating Sequential Processes. Prentice Hall International Series in Computer Science, New Jersey: Prentice-Hall, 1985.Google Scholar
  3. 3.
    R. Milner, Communication and Concurrency. Prentice Hall International Series in Computer Science, New Jersey: Prentice Hall, 1989.Google Scholar
  4. 4.
    G. Agha, Actors: A Model of Concurrent Computation in Distributed Systems. MIT Press, 1986.Google Scholar
  5. 5.
    INMOS Ltd., OCCAM 2, Reference Manual. Series in Computer Science, London-Sydney-Toronto-New Delhi-Tokyo: Prentice-Hall, 1988.Google Scholar
  6. 6.
    T. Bolognesi and E. Brinksma, “Introduction to the ISO specification language LOTOS,” Computer Networds and ISDN Systems, vol. 14, pp. 25–59, 1986.Google Scholar
  7. 7.
    A. Geist, A. Beguelin, J. Dongarra, W. Jiang, R. Manchek, and V. Sunderam, “PVM 3 user's guide and reference manual,” Tech. Rep. ORNL/TM-12187, Oak Ridge National Laboratory, September 1994.Google Scholar
  8. 8.
    J. J. Dongarra, S. W. Otto, M. Snir, and D. Walker, “An introduction to the MPI standard,” Tech. Rep. CS-95-274, University of Tennessee, Jan. 1995.Google Scholar
  9. 9.
    R. Butler and E. Lusk, “User's guide to the p4 parallel programming system,” Tech. Rep. ANL-92/17, Argonne National Laboratory, Oct. 1992. Version 1.4.Google Scholar
  10. 10.
    R. Hempel, H. Hoppe, U. Keller, and W. Krotz, “PARMACS v6.1 specification,” tech. rep., PALLAS GmbH, Hermulheimer Strasse 10, D-50321, August 1995.Google Scholar
  11. 11.
    F. Arbab, I. Herman, and P. Spilling, “An overview of Manifold and its implementation,” Concurrency: Practice and Experience, vol. 5, pp. 23–70, February 1993.Google Scholar
  12. 12.
    F. Arbab, “Manifold version 2: Language reference manual,” Tech. Rep. preliminary version, Centrum voor Wiskunde en Informatica, Kruislaan 413, 1098 SJ Amsterdam, The Netherlands, 1995.Google Scholar
  13. 13.
    C. T. H. Everaars, P. W. Hemker, and W. Stortelder, “Manual of splds, a software package for parameter identification in dynamic systems,” Tech. Rep. preliminary version, Centrum voor Wiskunde en Informatica, Kruislaan 413, 1098 SJ Amsterdam, The Netherlands, September 1995.Google Scholar
  14. 14.
    T. Malone and K. Crowston, “The interdisciplinary study of coordination,” ACM Computing Surveys, vol. 26, pp. 87–119, March 1994.Google Scholar
  15. 15.
    L. Dami, “HOP: Hierarchical objects with ports,” in Object Frameworks (D. Tsichritzis, ed.), Centre Universataire d'Informatique, University of Geneva, 1992.Google Scholar
  16. 16.
    S. Frolund and G. Agha, “A language framework for multi-object coordination,” in Proc. ECOOP '93, vol. 707 of Lecture Notes in Computer Science, pp. 346–360, Springer-Verlag, 1993.Google Scholar
  17. 17.
    N. Carriero and D. Gelernter, “LINDA in context,” Communications of the ACM, vol. 32, pp. 444–458, 1989.Google Scholar
  18. 18.
    D. Gelernter, “Generative communication in Linda,” ACM Transactions on Programming Languages and Systems, vol. 7, no. 1, pp. 80–112, 1985.Google Scholar
  19. 19.
    I. Foster and S. Taylor, Strand: New Concepts in Parallel Programming. Prentice-Hall, 1990.Google Scholar
  20. 20.
    M. Wise, D. Jones, and T. Hintz, “PMS-Prolog: A distributed Prolog with processes, modules and streams,” in Implementations of Distributed Prolog, Series in Parallel Computing, pp. 379–404, Wiley, 1992.Google Scholar
  21. 21.
    A. Borgi and P. Ciancarini, “The concurrent language Shared Prolog,” ACM Transactions on Programming Languages and Systems, vol. 13, no. 1, pp. 99–123, 1991.Google Scholar
  22. 22.
    E. Shapiro, “The family of Concurrent Logic Languages,” ACM Computing Surveys, vol. 21, pp. 412–510, September 1989.Google Scholar
  23. 23.
    J. Andreoli, P. Ciancarini, and R. Pareschi, “Interaction Abstract Machines,” in Trends in Object-Based Concurrent Computing, pp. 257–280, MIT Press, 1993.Google Scholar
  24. 24.
    J. Andreoli and R. Pareschi, “Linear Objects: Logical processes with built-in inheritance,” New Generation Computing, vol. 9, no. 3–4, pp. 445–473, 1991.Google Scholar
  25. 25.
    H. P. Nii, “Blackboard systems,” in The Handbook of Artificial Intelligence (A. Barr, P. Cohen, and E. Feigenbaum, eds.), vol. 4, pp. 1–82, Addison-Wesley, 1989.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1996

Authors and Affiliations

  • Farhad Arbab
    • 1
  1. 1.Department of Interactive SystemsCWISJ AmsterdamThe Netherlands

Personalised recommendations