PRELUDE : A System for Portable ParallelSoftwarebyWilliam
نویسندگان
چکیده
In this paper we describe Prelude, a programming language and accompanying system support for writing portable MIMD parallel programs. Prelude supports a methodology for designing and organizing parallel programs that makes them easier to tune for particular architectures and to port to new architectures. It builds on earlier work on Emerald, Amber, and various Fortran extensions to allow the programmer to divide programs into architecture-dependent and architecture-independent parts, and then to change the architecture-dependent parts to port the program to a new machine or to tune its performance on a single machine. The architecture-dependent parts of a program are speciied by annotations that describe the mapping of a program onto a machine. Prelude provides a variety of mapping mechanisms similar to those in other systems, including remote procedure call, object migration , and data replication and partitioning. In addition, Prelude includes novel migration mechanisms for computations based on a form of continuation passing. The implementation of object migration in Prelude uses a novel approach based on xup blocks that is more eecient than previous approaches, and amortizes the cost of each migration so that the cost per migration drops as the frequency of migrations increases. The current implementation of Prelude is built on top of Proteus, a conngurable simulator that provides both fast and accurate simulations of a wide range of MIMD architectures. Proteus itself is a useful tool for developing parallel applications, since it provides powerful non-intrusive debugging and performance monitoring capabilities that are diicult or impossible to obtain on a real machine. Much of the testing, debugging, and initial testing of an application can be accomplished using Proteus, typically with less eeort than would be required on a real machine. In addition, Proteus allows the programmer to test the scalability and portability of a program, including on a range of machine sizes and architectures not supported by available machines. We are using Proteus to develop our initial prototype of Prelude, and plan to port the implementation of Prelude to commercial and research multiprocessors in the near future.
منابع مشابه
PRELUDE: A System for Portable Parallel Software
In this paper we describe Prelude, a programming language and accompanying system support for writing portable MIMD parallel programs. Prelude supports a methodology for designing and organizing parallel programs that makes them easier to tune for particular architectures and to port to new architectures. It builds on earlier work on Emerald, Amber, and various Fortran extensions to allow the p...
متن کاملA Prelude to Standard and Standardization in Educational Systems
education. Today, a qualitative movement toward efficient trainings ineducational systems is necessary, since one of the important factors in the development and progress of any society is necessarily resources, manpower and their education.Considering education as a basic system in growing human resources, the present article tries to address this matter, due to the fact that we are in a situ...
متن کاملDesign and construction of a portable unite for measuring body-fluid components
Introduction: In the laboratory, the time required to measure body-fluids components is usually one to two working days. The laboratory methods require sample preparation and instrument cleaning after the sample reading. In emergency scenarios, the physician does not have much time to make a clinical decision. To solve these challenges, a portable system for measuring the body fluids components...
متن کاملDynamic process management in an MPI setting
We describe an architecture for the runtime environment for parallel applications as prelude to describing how parallel application might interface to their environment in a portable way. We propose extensions to the Message-Passing Interface (MPI) Standard that provide for dynamic process management, including spawning of new processes by a running application and connection to existing proces...
متن کاملA PRELUDE TO THE THEORY OF RANDOM WALKS IN RANDOM ENVIRONMENTS
A random walk on a lattice is one of the most fundamental models in probability theory. When the random walk is inhomogenous and its inhomogeniety comes from an ergodic stationary process, the walk is called a random walk in a random environment (RWRE). The basic questions such as the law of large numbers (LLN), the central limit theorem (CLT), and the large deviation principle (LDP) are ...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 1992