Opus: A Coordination Language for Multidisciplinary Applications

36Citations
Citations of this article
6Readers
Mendeley users who have this article in their library.

Abstract

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.

Cite

CITATION STYLE

APA

Chapman, B., Haines, M., Mehrotra, P., Zima, H., & Van Rosendale, J. (1997). Opus: A Coordination Language for Multidisciplinary Applications. Scientific Programming, 6(4), 345–362. https://doi.org/10.1155/1997/632908

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free