Proceedings Sixth International Parallel Processing Symposium
DOI: 10.1109/ipps.1992.222983
|View full text |Cite
|
Sign up to set email alerts
|

Aroma: language support for distributed objects

Abstract: Aroma simplifies the task of parallelizing large applications on multicomputers by providing applications with a shared object space. Aroma supports both traditional monolithic objects and aggregate object that can be partitioned across multiple nodes. Aggregate objects support data parallelism efficiently. An Aroma program consists of tasks that operate on shared objects. Tasks typically execute on the node on which their input data is located, thus minimizing communication. Shared data objects have synchroni… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

0
6
0

Publication Types

Select...
3
2

Relationship

2
3

Authors

Journals

citations
Cited by 5 publications
(6 citation statements)
references
References 15 publications
0
6
0
Order By: Relevance
“…As described earlier in this section, programming tools for both tightly-coupled and loosely-coupled distributed-memory systems are an active area of research. In the context of the Nectar system, we have demonstrated tools in three critical areas: monitoring tools that help the programmer understand the behavior of the application [47,12], support for data sharing across the network [48,49], and load balancing tools that help in distributing work to make efficient use of the cycles on the nodes [67,66,67,53,54,55].…”
Section: Resultsmentioning
confidence: 99%
See 1 more Smart Citation
“…As described earlier in this section, programming tools for both tightly-coupled and loosely-coupled distributed-memory systems are an active area of research. In the context of the Nectar system, we have demonstrated tools in three critical areas: monitoring tools that help the programmer understand the behavior of the application [47,12], support for data sharing across the network [48,49], and load balancing tools that help in distributing work to make efficient use of the cycles on the nodes [67,66,67,53,54,55].…”
Section: Resultsmentioning
confidence: 99%
“…Ideally, these tasks are performed using programming tools that support distributed computing and that can significantly reduce the complexity of parallel and distributed computing. Examples of tools include parallelizing compilers [61,15,23], object-based runtime tools [16,6,26,3,48], and languages and environments for specific application domains [39,28,64]. While many distributed applications benefit from the use of tools, today's tools cannot yet, in general, characterize the way irregular programs update complex data structures or the complex control flow of a substantial application.…”
Section: Methodology For Parallelizing Large Applicationsmentioning
confidence: 99%
“…Implementing applications on a network-based multicomputer is a non-trivial effort, and programming tools that simplify that task are needed. In the context of the Nectar and Gigabit Nectar systems, we have demonstrated tools in three critical areas: monitoring tools that help the programmer understand the behavior of their application [10,9], support for data sharing across the network [35,36], and load balancing tools that help in distributing work to make efficient use of the cycles on the nodes [51,50,41,42,40].…”
Section: Worktation Cluster Applicationsmentioning
confidence: 99%
“…Before we discuss the general load balancing architecture, we describe Aroma [14], our distributed programming system. Aroma programs consist of tasks that operate on distributed objects.…”
Section: Base Programming Modelmentioning
confidence: 99%
“…The size of the tasks is uniform in the first and third example, but grows monotonically in the second example. The implementation of the second and third example using Aroma is explained in detail in [14].…”
Section: Homogeneous Task Load Balancingmentioning
confidence: 99%