|
ABSTRACT
Orca is a portable, object-based distributed shared memory (DSM) system. This article studies and evaluates the design choices made in the Orca system and compares Orca with other DSMs. The article gives a quantitative analysis of Orca's coherence protocol (based on write-updates with function shipping), the totally ordered group communication protocol, the strategy for object placement, and the all-software, user-space architecture. Performance measurements for 10 parallel applications illustrate the trade-offs made in the design of Orca and show that essentially the right design decisions have been made. A write-update protocol with function shipping is effective for Orca, especially since it is used in combination with techniques that avoid replicating objects that have a low read/write ratio. The overhead of totally ordered group communication on application performance is low. The Orca system is able to make near-optimal decisions for object placement and replication. In addition, the article compares the performance of Orca with that of a page-based DSM (TreadMarks) and another object-based DSM (CRL). It also analyzes the communication overhead of the DSMs for several applications. All performance measurements are done on a 32-node Pentium Pro cluster with Myrinet and Fast Ethernet networks. The results show that Orca programs send fewer messages and less data than the TreadMarks and CRL programs and obtain better speedups.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
| |
1
|
|
| |
2
|
BAL, H. AND TANENBAUM, A. 1988. Distributed programming with shared data. In Proceedings of the IEEE CS 1988 International Conference on Computer Languages. 82-91.
|
| |
3
|
BAL, H., BHOEDJANG, R., HOFMAN, R., JACOBS, C., LANGENDOEN, K., RIJHL, T., AND KAASHOEK, M. 1997a. Portability in the Orca shared object system. Tech. Rep., Vrije Universiteit.
|
| |
4
|
Henri Bal , Raoul Bhoedjang , Rutger Hofman , Ceriel Jacobs , Koen Langendoen , Tim Rühl , Kees Verstoep, Performance of a high-level parallel language on a high-speed network, Journal of Parallel and Distributed Computing, v.40 n.1, p.49-64, Jan. 10, 1997
[doi> 10.1006/jpdc.1996.1265
]
|
| |
5
|
|
 |
6
|
|
 |
7
|
J. K. Bennett , J. B. Carter , W. Zwaenepoel, Munin: distributed shared memory based on type-specific memory coherence, Proceedings of the second ACM SIGPLAN symposium on Principles & practice of parallel programming, p.168-176, March 14-16, 1990, Seattle, Washington, United States
|
| |
8
|
BERSHAD, B., ZEKAUSHAS, M., AND SAWDON, W. 1993. The Midway distributed shared memory system. In Proceedings of COMPCON. 528-537.
|
| |
9
|
|
| |
10
|
Nanette J. Boden , Danny Cohen , Robert E. Felderman , Alan E. Kulawik , Charles L. Seitz , Jakov N. Seizovic , Wen-King Su, Myrinet: A Gigabit-per-Second Local Area Network, IEEE Micro, v.15 n.1, p.29-36, February 1995
[doi> 10.1109/40.342015
]
|
| |
11
|
CARREIRA, J., SILVA, J., LANGENDOEN, K., AND BAL, H. 1997. Implementing tuple space with threads. In Proceedings of the International Conference on Parallel and Distributed Systems (Euro-PDS'97). 259-264.
|
| |
12
|
CASTRO, M., GUEDES, P., SEQUEIRA, M., AND COSTA, M. 1996. Efficient and flexible object sharing. In Proceedings of the 1996 International Conference on Parallel Processing. Vol. 1. 128-137.
|
| |
13
|
|
 |
14
|
|
| |
15
|
Cox, A., DWARKADAS, S., KELEHER, P., AND ZWAENEPOEL, W. 1994. TreadMarks: Distributed shared memory on standard workstations and operating systems. In Proceedings of the Winter 94 Usenix Conference. USENIX Assoc., Berkeley, Calif., 115-131.
|
 |
16
|
|
 |
17
|
Sandhya Dwarkadas , Alan L. Cox , Willy Zwaenepoel, An integrated compile-time/run-time software distributed shared memory system, Proceedings of the seventh international conference on Architectural support for programming languages and operating systems, p.186-197, October 01-04, 1996, Cambridge, Massachusetts, United States
|
 |
18
|
|
| |
19
|
|
| |
20
|
|
 |
21
|
|
| |
22
|
|
 |
23
|
K. L. Johnson , M. F. Kaashoek , D. A. Wallach, CRL: high-performance all-software distributed shared memory, Proceedings of the fifteenth ACM symposium on Operating systems principles, p.213-226, December 03-06, 1995, Copper Mountain, Colorado, United States
|
| |
24
|
KAASHOEK, M. 1992. Group communication in distributed computer systems. Ph.D. thesis, Vrije Universiteit, Amsterdam.
|
| |
25
|
|
 |
26
|
Leonidas Kontothanassis , Galen Hunt , Robert Stets , Nikolaos Hardavellas , Michał Cierniak , Srinivasan Parthasarathy , Wagner Meira, Jr. , Sandhya Dwarkadas , Michael Scott, VM-based shared memory on low-latency, remote-memory-access networks, Proceedings of the 24th annual international symposium on Computer architecture, p.157-169, June 01-04, 1997, Denver, Colorado, United States
|
| |
27
|
K. Langendoen , J. Romein , R. Bhoedjang , H. Bal, Integrating polling, interrupts, and thread management, Proceedings of the 6th Symposium on the Frontiers of Massively Parallel Computation, p.13, March 27-31, 1996
|
| |
28
|
LEE, J. 1993. Concord: Re-thinking the division of labor in a distributed shared memory system. Tech. Rep. TR-93-12-05, Univ. of Washington, Seattle, Wash.
|
| |
29
|
Daniel Lenoski , James Laudon , Kourosh Gharachorloo , Wolf-Dietrich Weber , Anoop Gupta , John Hennessy , Mark Horowitz , Monica S. Lam, The Stanford Dash Multiprocessor, Computer, v.25 n.3, p.63-79, March 1992
[doi> 10.1109/2.121510
]
|
 |
30
|
|
 |
31
|
Honghui Lu , Alan L. Cox , Sandhya Dwarkadas , Ramakrishnan Rajamony , Willy Zwaenepoel, Compiler and software distributed shared memory support for irregular applications, Proceedings of the sixth ACM SIGPLAN symposium on Principles and practice of parallel programming, p.48-56, June 18-21, 1997, Las Vegas, Nevada, United States
|
 |
32
|
Honghui Lu , Sandhya Dwarkadas , Alan L. Cox , Willy Zwaenepoel, Message passing versus distributed shared memory on networks of workstations, Proceedings of the 1995 ACM/IEEE conference on Supercomputing (CDROM), p.37-es, December 04-08, 1995, San Diego, California, United States
[doi> 10.1145/224170.224285]
|
| |
33
|
|
| |
34
|
Lucco, S. 1987. A heuristic Linda kernel for hypercube multiprocessors. In Proceedings of the Conference on Hypercube Multiprocessors. 32-38.
|
| |
35
|
MINNICH, R. AND FARBER, D. 1990. Reducing host load, network load, and latency in a distributed shared memory. In Proceedings of the l Oth International Conference on Distributed Computing Systems. 468-475.
|
| |
36
|
|
 |
37
|
Scott Pakin , Mario Lauria , Andrew Chien, High performance messaging on workstations: Illinois fast messages (FM) for Myrinet, Proceedings of the 1995 ACM/IEEE conference on Supercomputing (CDROM), p.55-es, December 04-08, 1995, San Diego, California, United States
[doi> 10.1145/224170.224360]
|
| |
38
|
|
 |
39
|
|
| |
40
|
|
| |
41
|
RUHL, T., BAL, H., BHOEDJANG, R., LANGENDOEN, K., AND BENSON, G. 1996. Experience with a portability layer for implementing parallel programming systems. In Proceedings of the 1996 International Conference on Parallel and Distributed Processing Techniques and Applications (PDPTA '96). 1477-1488.
|
 |
42
|
Daniel J. Scales , Kourosh Gharachorloo , Chandramohan A. Thekkath, Shasta: a low overhead, software-only approach for supporting fine-grain shared memory, Proceedings of the seventh international conference on Architectural support for programming languages and operating systems, p.174-185, October 01-04, 1996, Cambridge, Massachusetts, United States
|
| |
43
|
SCALES, D. AND LAM, M. 1994. The design and evaluation of a shared object system for distributed memory machines. In Proceedings of the 1st USENIX Symposium on Operating Systems Design and Implementation. USENIX Assoc., Berkeley, Calif., 101-114.
|
 |
44
|
Ioannis Schoinas , Babak Falsafi , Alvin R. Lebeck , Steven K. Reinhardt , James R. Larus , David A. Wood, Fine-grain access control for distributed shared memory, Proceedings of the sixth international conference on Architectural support for programming languages and operating systems, p.297-306, October 05-07, 1994, San Jose, California, United States
|
 |
45
|
|
| |
46
|
|
| |
47
|
|
| |
48
|
|
CITED BY 22
|
|
|
|
|
R. Veldema , R. F. H. Hofman , R. A. F. Bhoedjang , H. E. Bal, Runtime optimizations for a Java DSM implementation, Proceedings of the 2001 joint ACM-ISCOPE conference on Java Grande, p.153-162, June 2001, Palo Alto, California, United States
|
|
|
|
|
|
Rob V. van Nieuwpoort , Jason Maassen , Rutger Hofman , Thilo Kielmann , Henri E. Bal, Ibis: an efficient Java-based grid programming environment, Proceedings of the 2002 joint ACM-ISCOPE conference on Java Grande, p.18-27, November 03-05, 2002, Seattle, Washington, USA
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Rob van Nieuwpoort , Jason Maassen , Henri E. Bal , Thilo Kielmann , Ronald Veldema, Wire-area parallel computing in Java, Proceedings of the ACM 1999 conference on Java Grande, p.8-14, June 12-14, 1999, San Francisco, California, United States
|
|
|
|
Jason Maassen , Thilo Kielmann , Henri E. Bal, Efficient replicated method invocation in Java, Proceedings of the ACM 2000 conference on Java Grande, p.88-96, June 03-04, 2000, San Francisco, California, United States
|
|
|
|
Arnold Nelisse , Thilo Kielmann , Henri E. Bal , Jason Maassen, Object-based collective communication in Java, Proceedings of the 2001 joint ACM-ISCOPE conference on Java Grande, p.11-20, June 2001, Palo Alto, California, United States
|
|
|
|
|
|
Henri Bal , Raoul Bhoedjang , Rutger Hofman , Ceriel Jacobs , Thilo Kielmann , Jason Maassen , Rob van Nieuwpoort , John Romein , Luc Renambot , Tim Rühl , Ronald Veldema , Kees Verstoep , Aline Baggio , Gerco Ballintijn , Ihor Kuz , Guillaume Pierre , Maarten van Steen , Andy Tanenbaum , Gerben Doornbos , Desmond Germans , Hans Spoelder , Evert-Jan Baerends , Stan van Gisbergen , Hamideh Afsermanesh , Dick van Albada , Adam Belloum , David Dubbeldam , Zeger Hendrikse , Bob Hertzberger , Alfons Hoekstra , Kamil Iskra , Drona Kandhai , Dennis Koelma , Frank van der Linden , Benno Overeinder , Peter Sloot , Piero Spinnato , Dick Epema , Arjan van Gemund , Pieter Jonker , Andrei Radulescu , Cees van Reeuwijk , Henk Sips , Peter Knijnenburg , Michael Lew , Floris Sluiter , Lex Wolters , Hans Blom , Cees de Laat , Aad van der Steen, The distributed ASCI Supercomputer project, ACM SIGOPS Operating Systems Review, v.34 n.4, p.76-96, October 2000
|
|
|
|
|
|
|
|
|
REVIEW
"Herbert G. Mayer : Reviewer"
Orca is a portable, distributed shared memory (DSM) system with a
C-like user interface and an underlying runtime system (RTS) named
Panda. According to the paper, the design choices that characterize Orca
are effective. These choices include
more...
Peer to Peer - Readers of this Article have also read:
-
Data structures for quadtree approximation and compression
Communications of the ACM
28, 9
Hanan Samet
-
A hierarchical single-key-lock access control using the Chinese remainder theorem
Proceedings of the 1992 ACM/SIGAPP Symposium on Applied computing
Kim S. Lee
, Huizhu Lu
, D. D. Fisher
-
An intelligent component database for behavioral synthesis
Proceedings of the 27th ACM/IEEE conference on Design automation
Gwo-Dong Chen
, Daniel D. Gajski
-
The GemStone object database management system
Communications of the ACM
34, 10
Paul Butterworth
, Allen Otis
, Jacob Stein
-
Putting innovation to work: adoption strategies for multimedia communication systems
Communications of the ACM
34, 12
Ellen Francik
, Susan Ehrlich Rudman
, Donna Cooper
, Stephen Levine
|