Languages that support both task and data parallelism are highly general and can exploit both forms of parallelism within a single application. However, integrating the two forms of parallelism cleanly and within a coherent programming model is di cult. This paper describes four languages (Fx, Opus, Orca, and Braid) that try to achieve such an integration and identi es several problems. The main problems are how to support both SPMD and MIMD style programs, how to organize the address space of a parallel program, and how to design the integrated model such that it can be implemented e ciently.
Data parallel languages, such as High Performance Fortran, can be successfully applied to a wide range of numerical applications.However, many advanced scientific and engineering applications are multidisciplinary and heterogeneous in nature, and thus do not fit well into the data parallel paradigm. In this paper we present Opus, a language designed to fill this gap. The central concept of Opus is a mechanism called ShareD Abstractions (SDA). An SDA can be used as a computation server, i.e., a locus of computational activity, or as a data repository for sharing data between asynchronous tasks. SDAs can be internally data parallel, providing support for the integration of data and task parallelism as well as nested task parallelism. They can thus be used to express multidisciplinary applications in a natural and efficient way. In this paper we describe the features of the language through a series of examples and give an overview of the runtime support required to implement these concepts in parallel and distributed environments.
We have recently introduced Opus, a set of Fortran language extensions that provide shared data abstractions (SDAs) as a mechanism for communication and synchronization among coarse-grain data parallel tasks. In this paper, we discuss the design and implementation issues of the runtime system necessary to support SDAs, and outline the underlying requzrements for such a runtzme system. W e explore the feasibility of this approach by implementing a prototype of the runtrme system. We give prelimznary results of the prototype on the Intel Paragon, outline the current status of the project, and discuss future plans.
We have recently introduced a new language, called Opus, which provides a set of Fortran language extensions that Mlow for integrated support of task and data parMlelism. It also provides shared data abstractions (SDAs) as a method for communication and synchronization among these tasks. In this paper, we first provide a brief description of the language features and then focus on both the language-dependent and language-independent parts of the runtime system that support the language. The language-independent portion of the runtime system supports lightweight threads across multiple address spaces, and is built upon existing lightweight thread and communication systems. The lafiguage-dependent portion of the runtime system supports conditional invocation of SDA methods and distributed SDA argument handling.
Multithreading is often seen as a solution to the problem of large memory latencies that occur when remote data is needed for local computation. This paper quantifies the costs and benefits of software multithreading on a distributed memory multiprocessor. We describe the design of a machine-independent software multithreading system as part of a runtime system for a high-level parallel programming language, and present a quantitative analysis of the costs of our multithreading system, as well as its performance on the nCUBE/2 multiprocessor. We show that, in the presence of a sufficient number of remote references to cover the initial costs, our multithreading system provides speedup factors of between 1.27 and 1.65.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.
customersupport@researchsolutions.com
10624 S. Eastern Ave., Ste. A-614
Henderson, NV 89052, USA
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.
Copyright © 2024 scite LLC. All rights reserved.
Made with 💙 for researchers
Part of the Research Solutions Family.