Application of an Object - Oriented Parallel Run - Time
نویسندگان
چکیده
We have taken a Grand Challenge 3d Multi-Grid code, QGMG, initially developed on the Cray C-90 and subsequently parallelized for MPPs, and implemented it using the Dude object-oriented, runtime system which combines both task and data parallelism. The QGMG code is a challenging application for two reasons. Firstly, as in all multigrid solvers, the most straightforward implementation requires that most of the processors idle at barrier synchronizations. Secondly , the QGMG code is an example of an application that requires both task and data parallelism: two multigrids (task parallelism) must be solved and each multigrid solver contains data parallelism. To address these challenges, Dude loosens the requirement that all processes must wait at barriers, and provides integrated task parallelism and data parallelism. In this paper we describe the QGMG code and the Dude object-oriented, runtime system in detail, explaining how we parallelized this Grand Challenge application.
منابع مشابه
Declarative Semantics in Object-Oriented Software Development - A Taxonomy and Survey
One of the modern paradigms to develop an application is object oriented analysis and design. In this paradigm, there are several objects and each object plays some specific roles in applications. In an application, we must distinguish between procedural semantics and declarative semantics for their implementation in a specific programming language. For the procedural semantics, we can write a ...
متن کاملPortable Run-Time Support for Dynamic Object-Oriented Parallel Processing1
Mentat is an object-oriented parallel processing system designed to simplify the task of writing portable parallel programs for parallel machines and workstation networks. The Mentat compiler and run-time system work together to automatically manage the communication and synchronization between objects. The run-time system marshals member function arguments, schedules objects on processors, and...
متن کاملHigh-Level Directives to Drive the Allocation of Parallel Object-Oriented Applications
The paper presents the Abstract Configuration Language (ACL) implemented within the Parallel Objects object-oriented parallel programming environment. ACL defines a set of directives that allow users to specify the allocation needs of his/her application components without being aware of the architectural details. ACL directives drive the allocation decisions of the run-time support, by adaptin...
متن کاملVisual object-oriented development of parallel applications
visual syntax. The developer is never forced into a parallelism-centric mode of operation. The developer’s paradigm is simply object-orientation, yet because of the nature of the programming language syntax, potential parallelism is trivial to extract automatically. Furthermore, since the parallel object-flow paradigm gains benefits from existing object-oriented technologies, it comes equipped ...
متن کاملModeling and Evaluation of Stochastic Discrete-Event Systems with RayLang Formalism
In recent years, formal methods have been used as an important tool for performance evaluation and verification of a wide range of systems. In the view points of engineers and practitioners, however, there are still some major difficulties in using formal methods. In this paper, we introduce a new formal modeling language to fill the gaps between object-oriented programming languages (OOPLs) us...
متن کاملModeling and Evaluation of Stochastic Discrete-Event Systems with RayLang Formalism
In recent years, formal methods have been used as an important tool for performance evaluation and verification of a wide range of systems. In the view points of engineers and practitioners, however, there are still some major difficulties in using formal methods. In this paper, we introduce a new formal modeling language to fill the gaps between object-oriented programming languages (OOPLs) us...
متن کامل