Panda: A Portable Platform to Support Parallel Programming Languages

Current parallel programming languages require advanced run-time support to implement communication and data consistency. As such runtime systems are usually layered on top of a specific operating system, they are nonportable. This paper reports on our early experiences with Panda, a portable virtua...

Full description

Bibliographic Details
Main Authors: Raoul Bhoedjang, Tim Ruhl, Rutger Hofman, Koen Langendoen, Henri Bal, Frans Kaashoek
Other Authors: The Pennsylvania State University CiteSeerX Archives
Format: Text
Language:English
Published: 1993
Subjects:
Online Access:http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.38.4298
Description
Summary:Current parallel programming languages require advanced run-time support to implement communication and data consistency. As such runtime systems are usually layered on top of a specific operating system, they are nonportable. This paper reports on our early experiences with Panda, a portable virtual machine that provides general and flexible support for implementing run-time systems for parallel programming languages. Panda has two interfaces: a Panda interface providing threads, RPC, and totally-ordered group communication, and a system interface which encapsulates machine dependencies by providing machine-independent thread and communication abstractions. We describe the interfaces, our experience with an initial Unix 1 implementation, and the development of a new, portable, and scalable run-time system for the Orca parallel programming language on top of Panda. 1 Introduction Modern parallel programming languages require advanced run-time support for communication and data con.