Affiliation:
1. Massachusetts Institute of Technology, Cambridge
2. Stanford Univ., Stanford, CA
Abstract
Jade is a portable, implicitly parallel language designed for exploiting task-level concurrency.Jade programmers start with a program written in a standard serial, imperative language, then use Jade constructs to declare how parts of the program access data. The Jade implementation uses this data access information to automatically extract the concurrency and map the application onto the machine at hand. The resulting parallel execution preserves the semantics of the original serial program. We have implemented Jade as an extension to C, and Jade implementations exist for s hared-memory multiprocessors, homogeneous message-passing machines, and heterogeneous networks of workstations. In this atricle we discuss the design goals and decisions that determined the final form of Jade and present an overview of the Jade implementation. We also present our experience using Jade to implement several complete scientific and engineering applications. We use this experience to evaluate how the different Jade language features were used in practice and how well Jade as a whole supports the process of developing parallel applications. We find that the basic idea of preserving the serial semantics simplifies the program development process, and that the concept of using data access specifications to guide the parallelization offers significant advantages over more traditional control-based approaches. We also find that the Jade data model can interact poorly with concurrency patterns that write disjoint pieces of a single aggregate data structure, although this problem arises in only one of the applications.
Publisher
Association for Computing Machinery (ACM)
Reference70 articles.
1. POOL-T: A parallel object-oriented language. In Object Oriented Concurrent Programming, A. Yonezawa and M. Tokoro, Eds. MIT Press, Cambridge;AMERICA P.;Mass.,1987
2. TreadMarks: shared memory computing on networks of workstations
Cited by
83 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. A Review on Multi-Agent Systems and JADE Applications in Microgrids;2024 12th International Conference on Smart Grid (icSmartGrid);2024-05-27
2. Understanding and Reaching the Performance Limit of Schedule Tuning on Stable Synchronization Determinism;Proceedings of the International Conference on Parallel Architectures and Compilation Techniques;2022-10-08
3. A Comprehensive Exploration of Languages for Parallel Computing;ACM Computing Surveys;2022-01-18
4. Deterministic Atomic Buffering;2020 53rd Annual IEEE/ACM International Symposium on Microarchitecture (MICRO);2020-10
5. Processor-Oblivious Record and Replay;ACM Transactions on Parallel Computing;2019-12-26