Structured dagger: A coordination language for Message-Driven Programming

  • Laxmikant V. Kalé
  • Milind A. Bhandarkar
Workshop 05+21 Parallel Languages, Programming, and High-Level Control
Part of the Lecture Notes in Computer Science book series (LNCS, volume 1123)


Message-Driven Programming style, used in languages such as Charm, avoids the use of blocking receives and allows adaptive overlap of computation and communication by scheduling objects depending on availability of messages. Charm supports objects whose methods can be triggered by remote objects asynchronously, which enables Charm programs to tolerate communication latencies in an adaptive manner. However, many parallel object-based applications require the object to coordinate the sequencing of the execution of their methods. Structured Dagger is a coordination language built on top of Charm that supports such applications by facilitating a clear expression of the flow of control within the object without losing the performance benefits of adaptive message-driven execution.


  1. 1.
    G.Agha, Actors: A Model of Concurrent Computation in Distributed Systems. MIT Press. 1986.Google Scholar
  2. 2.
    E. Arjomandi et. al., “ABC++: Concurrency by inheritance in C++”, IBM Systems Journal, Vol 34, No. 1, 1995.Google Scholar
  3. 3.
    A.Gursoy, Message Driven Execution and its Impact on the Performance of CFD and other Applications, Ph.D Thesis, University of Illinois at Urbana-Champaign, Jan 1993.Google Scholar
  4. 4.
    K.Mani Chandy and C. Kesselman, “Compositional C++: Compositional Parallel Programming”, Technical Report no. Caltech-CS-TR-92-13, Department of Computer Science, California Institute of Technology, 1992.Google Scholar
  5. 5.
    M. Hainer, D. Cronk and P. Mehrotra, “On the Design of Chant: A Talking Threads Package”, Proceedings of Supercomputing '94, Nov 1994.Google Scholar
  6. 6.
    L.V.Kale, “The Chare Kernel parallel programming language and system”, Proceedings of the International Conference on Parallel Processing, Vol II, Aug 1990, pp17–25.Google Scholar
  7. 7.
    L.V.Kale, “Converse: An Interoperable Framework for Parallel Programming”, Submitted to International Parallel Processing Symposium, 1996.Google Scholar
  8. 8.
    C.Tomlinson, V.Singh, “Inheritance and Synchronization with Enabled-Sets”, ACM OOPSLA 1989, pp103–112.Google Scholar
  9. 9.
    The CHARM(4.0) programming language manual, Department of Computer Science, University of Illinois at Urbana-Champaign, Urbana, IL, 1993.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1996

Authors and Affiliations

  • Laxmikant V. Kalé
    • 1
  • Milind A. Bhandarkar
    • 1
  1. 1.Department of Computer ScienceUniversity of IllinoisUrbana

Personalised recommendations