Parallel programming inPanda

Distributed systems are an alternative to shared-memory multiprocessors for the execution of parallel applications.Panda is a run-time system that provides architectural support for efficient parallel and distributed programming. It supplies fast user-level threads and a means for transparent and coordinated sharing of objects across a homogeneous network. The paper motivates the major architectural choices that guided our design. The problem of sharing data in a distributed environment is discussed, and the performance of the mechanisms provided by thePanda prototype implementation is assessed.

[1]  Oscar Nierstrasz,et al.  Viewing Objects as Patterns of Communicating Agents 1 , 1990 .

[2]  Evangelos P. Markatos,et al.  First-class user-level threads , 1991, SOSP '91.

[3]  所 真理雄,et al.  20th ACM Symposium on Operating Systems Principles , 1986, SOSP '05.

[4]  Thomas Breitbach,et al.  PANDA - Supporting Distributed Programming in C++ , 1993, ECOOP.

[5]  Brian D. Marsh,et al.  Multi-Model Parallel Programming , 1992 .

[6]  Alan L. Cox,et al.  TreadMarks: Distributed Shared Memory on Standard Workstations and Operating Systems , 1994, USENIX Winter.

[7]  Brian W. Kernighan,et al.  The C Programming Language , 1978 .

[8]  Vipin Kumar,et al.  On the Efficiency of Parallel Backtracking , 1993, IEEE Trans. Parallel Distributed Syst..

[9]  Jeffrey S. Chase,et al.  The Amber system: parallel programming on a network of multiprocessors , 1989, SOSP '89.

[10]  H. Assenmacher,et al.  The PANDA system architecture-a pico-kernel approach , 1993, 1993 4th Workshop on Future Trends of Distributed Computing Systems.

[11]  Brian N. Bershad,et al.  Using continuations to implement thread management and communication in operating systems , 1991, SOSP '91.

[12]  Al Stevens,et al.  C programming , 1990 .

[13]  Henri E. Bal,et al.  Parallel programming using shared objects and broadcasting , 1992, Computer.

[14]  Jayadev Misra Loosely-coupled processes , 1992, Future Gener. Comput. Syst..

[15]  Michael L. Scott,et al.  Multi-model parallel programming in psyche , 1990, PPOPP '90.

[16]  Hayssam Saleh,et al.  A Concurrency Control Mechanism for C++ Objects , 1991, Object-Based Concurrent Computing.

[17]  Bjarne Stroustrup,et al.  C++ Programming Language , 1986, IEEE Softw..

[18]  Brian N. Bershad,et al.  Scheduler activations: effective kernel support for the user-level management of parallelism , 1991, TOCS.

[19]  Henri E. Bal,et al.  Orca: A Language For Parallel Programming of Distributed Systems , 1992, IEEE Trans. Software Eng..

[20]  James Coplien,et al.  Advanced C++ Programming Styles and Idioms , 1991, Proceedings. Technology of Object-Oriented Languages and Systems, TOOLS 25 (Cat. No.97TB100239).

[21]  Narain H. Gehani,et al.  Concurrent C++: Concurrent programming with class(es) , 1988, Softw. Pract. Exp..

[22]  Jochen Liedtke,et al.  Improving IPC by kernel design , 1994, SOSP '93.

[23]  Niels Christian Juul,et al.  Moving Distributed Shared Memory to the Personal Computer: The MIRAGE+ Experience , 1993 .

[24]  Andrew P. Black,et al.  Fine-grained mobility in the Emerald system , 1987, TOCS.

[25]  Brian N. Bershad,et al.  The Midway distributed shared memory system , 1993, Digest of Papers. Compcon Spring.

[26]  Marc Shapiro,et al.  Structure and Encapsulation in Distributed Systems: The Proxy Principle , 1986, ICDCS.

[27]  Bill Nitzberg,et al.  Distributed shared memory: a survey of issues and algorithms , 1991, Computer.

[28]  Willy Zwaenepoel,et al.  Implementation and performance of Munin , 1991, SOSP '91.