Supercomputing pp 172-193 | Cite as

Design and rationale for MUPPET a programming environment for message based multiprocessors

  • H. Mühlenbein
  • O. Krämer
  • F. Limburger
  • M. Mevenkamp
  • S. Streitz
Session 3: Software Environments For Parallel Machines
Part of the Lecture Notes in Computer Science book series (LNCS, volume 297)


MUPPET is a problem solving environment for scientific computing with message-based multiprocessors. It consists of four parts — concurrent languages, programming environments, application environments and man-machine interfaces. The programming paradigm of MUPPET is based on parallel abstract machines and transformations between them. This paradigm allows the development of programs which are portable among multiprocessors with different interconnection topologies.

In this paper we discuss the MUPPET programming paradigm. We give an introduction to the language CONCURRENT MODULA-2 and the graphic specification system GONZO. The graphic specification system tries to introduce graphics as a tool for programming. It is also the basis for program generation and transformation.


parallel algorithms mutiprocessors programming environments parallel languages mapping problem 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [BaNu87]
    R. G. Babb II, D. C. Di Nucci: Design and Implementation of Parallel Programs with Large-Grain Data Flow, in: Characteristics of Parallel Algorithms; MIT Press, 1987.Google Scholar
  2. [BaSn86]
    R. Bahlke, G. Snelting: The PSG System: From Formal Language Definitions to Interactive Programming Environments, ACM TOPLAS, Vol.8, No.4, Oct. 1986.Google Scholar
  3. [BGM86]
    P. M. Behr, W. K. Giloi, H. MÜhlenbein: SUPRENUM: The German Supercomputer Project — Rationale and Concepts, Proc. IEEE Int. Conf. on Parallel Processing, 1986.Google Scholar
  4. [Bokh81]
    S. H. Bokhari: On the Mapping Problem, IEEE Transaction on Computers, C-30, No.3, 1981. pp 207–214Google Scholar
  5. [Brow86]
    J. C. Brown: Framework for Formulation and Analysis of Parallel Computation Structures, Parallel Computing 3, 1986.Google Scholar
  6. [Cook80]
    R. P. Cook: *MOD — A Language fow Distributed Programming, IEEE Transaction on SE, Vol.6, No.6, 1980. pp 563–571Google Scholar
  7. [Dann81]
    R. B. Dannenberg: AMPL — Design, Implementation and Evaluation of a Multiprocessing Language, Tech. Report, Department of Computer Science, Carnegie Mellon University, 1981.Google Scholar
  8. [DoD80]
    US DoD: Reference Manual for the ADA Programming Language, DoD-Report, July 1986.Google Scholar
  9. [EBP86]
    A. K. Ezzat, R. D. Bergeron, J. L. Pokoski: Task allocation heuristics for distributed computing systems, Proc. IEEE Int. Conf. on Distributed Systems, 1986.Google Scholar
  10. [Gren85]
    U. Grenander: Pictures as Complex Systems, in: Complexity, Language and Life: Mathematical approaches; J.L. Casti, A. Karlquist eds., Springer, Berlin, 1985.Google Scholar
  11. [FiFr84]
    R. E. Filman, D. P. Friedmann: Coordinated Computing, McGraw-Hill, New York, 1984.Google Scholar
  12. [FJLOS87]
    G. C. Fox, M. A. Johnson, G. A. Lyzenga, S.W. Otto, J.K. Salmon: Solving Problems on Concurrent Processors Vol.I, Caltech, to be published, 1987.Google Scholar
  13. [Ford86]
    B. Ford: The What and Why of Problem Solving Environments, in: Problem Solving Environments for Scientific Computing; B. Ford ed., to be published, 1986.Google Scholar
  14. [FrHa83]
    N. Francez, B. Hailpern: A Communication Abstraction Mechanism, ACM Operating System Review, Vol.19, No.2, 1985.Google Scholar
  15. [Hewi77]
    C. Hewitt: Viewing Control Structures as Patterns of Passing Messages, Artificial Intelligence, Vol.8, 1977. pp 323–364Google Scholar
  16. [HHR86]
    C. E. Houstis, E. N. Houstis, J. R. Rice: Partitioning PDE Computations: Methods and Performance Evaluation, Report Purdue University, available from authors, 1986.Google Scholar
  17. [HMSCP86]
    J. P. Hages, T. Mudge, Q. F. Stow, S. Colley, J. Palmer: A Microprocessor Based Hypercube Supercomputer, IEEE Micro, Vol.6, No.5, 1986.Google Scholar
  18. [HoMü86]
    H. C. Hoppe, H. Mühlenbein: Parallel Adaptive Full-Multigrid-Methods on Mes/sage/—Based Multiprocessors, Parallel Computing 3, 1986. pp 269–287Google Scholar
  19. [INMO83]
    INMOS ltd.: Occam Programming Manual, 1983.Google Scholar
  20. [KrMü87]
    O. Krämer, H. Mühlenbein: Mapping Strategies in Message-Based Multiprocessor Systems, Proc. Conf. on Parallel Architectures and Languages Europe, Eindhoven, The Netherlands, June 15–19, 1987. pp 213–225Google Scholar
  21. [LeSt85]
    D. P. O'Leary, G. W. Stewart: Data-Flow Algorithms for Parallel Matrix Computations, Comm. ACM, Vol.28, No.8, Aug. 1985.Google Scholar
  22. [MGK87]
    H. Mühlenbein, M. Gorges-Schleuter, O. Krämer: New Solutions to the Mapping Problem — The Evolution Approach, Parallel Computing, to be published, 1987.Google Scholar
  23. [MLSW86]
    H. Mühlenbein, F. Limburger, S. Streitz, S. Warhaut: MUPPET, A Programming Environment for Message-Based Multiprocessors, Proc. Fall Joint Computer Conference, Dallas, Nov. 1986.Google Scholar
  24. [MMW86]
    E. Maehle, K. Moritzen, K. Wirl: A Graph Model for Diagnosis and Reconfiguration and its Application to a Fault Tolerant Multiprocessor System, Proc. IEEE Conf. on Fault Tolerant Computing, 1986. pp 292–297Google Scholar
  25. [NiSa86]
    D. Nicol, J. Saltz: Dynamic Remapping of Parallel Computations with Varying Resource Demands, ICASE report 86-45, Nasa Langley, 1986.Google Scholar
  26. [PrSt84]
    I. Prigogine, I. Stengers: Order out of Chaos, Bantam, New York, 1986.Google Scholar
  27. [Quin84]
    P. Quinton: Automatic Synthesis of Systolic Arrays from Uniform Recurrent Equations, Proc. IEEE Int. Conf. on Parallel Processing, 1984. pp 208–214Google Scholar
  28. [SaSc85]
    Y. Saad, M. H. Schultz: Topological Properties of Hypercubes, Yale University, Research Report RR-389, June 1985.Google Scholar
  29. [Schr87]
    W. Schröder: Concepts of a Distributed Process Execution and Communication Environment (PEACE), Technical Report, GMD FIRST, Berlin, 1987.Google Scholar
  30. [ScJo85]
    K. Schwans, A. K. Jones: Specifying Resource Allocation for Parallel Programs on the CM* Multiprocessor, Ohio State University, OSU-CISRC-TR-85-10, 1985.Google Scholar
  31. [SeSn86]
    Z. Segall, L. Snyder [ed.]: Performance efficient parallel programming, Proc. NSF Workshop at Carnegie Mellon University, 1986.Google Scholar
  32. [SeRu85]
    Z. Segall, L. Rudolph: PIE: A Programming and Instrumentation Environment for Parallel Processing, IEEE Software, Nov. 1985. pp 22–37Google Scholar
  33. [Shap84]
    E. Shapiro: Systolic Programming: A Paradigm of Parallel Processing, Proc. Int. Conf. on Fifth Generation Computer, Tokio, 1984.Google Scholar
  34. [SnSo86]
    L. Snyder, D. Socha: POKER on the COSMIC CUBE: The First Retargetable Parallel Programming Language and Environment, Proc. IEEE Int. Conf. on Parallel Processing, 1986. pp 628–635Google Scholar
  35. [Snyd82]
    L. Snyder: Introduction to the Configurable, Highly Parallel Computer, IEEE Computer, Feb. 1982. pp 47–56Google Scholar
  36. [Snyd84]
    L. Snyder: Parallel Programming and the POKER Programming Environment, IEEE Computer, July 1984. pp 27–55Google Scholar
  37. [Uhr85]
    L. Uhr: Massively Parallel Multi-Computer Hardware — Software Structures for Learning, in: Complex Systems — Operational Approaches; H. Haken ed., Springer, New York, 1985.Google Scholar
  38. [Ullm84a]
    J. D. Ullmann: Computational Aspects of VLSI, Computer Science Press, 1984.Google Scholar
  39. [Ullm84b]
    J. D. Ullmann: Some Thoughts About Supercomputer Organization, Proc. IEEE Compcon, San Francisco, 1984, pp 424–431Google Scholar
  40. [Wirt85]
    N. Wirth: Programming in Modula-2, Third corrected Edition, Springer, Berlin, 1985.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1988

Authors and Affiliations

  • H. Mühlenbein
    • 1
  • O. Krämer
    • 1
  • F. Limburger
    • 1
  • M. Mevenkamp
    • 1
  • S. Streitz
    • 1
  1. 1.Gesellschaft für Mathematik und Datenverarbeitung mbHSankt Augustin 1

Personalised recommendations