MetaCartSign in to MyCiteSeer

Include Citations | Advanced Search | Help

Include Citations | Advanced Search | Help

  Efficient remote method invocation (1998) [15 citations — 1 self]

Download:
Download as a PDF | Download as a PS
by Ronald Veldema, Rob Nieuwpoort, Jason Maassen, Henri E. Bal, Aske Plaat
Vrije Universiteit Amsterdam
http://www.cs.vu.nl/~rob/emi.ps.gz
Add To MetaCart

Abstract:

In current Java implementations, Remote Method Invocation is slow. On a Pentium Pro/Myrinet cluster, for example, a null RMI takes 1228 s using Sun's JDK 1.1.4. This paper describes Manta, a Java system designed to support efficient communication. On the same Myrinet cluster, Manta achieves a null RMI latency of 35 s. Manta is based on a native Java compiler. It achieves high communication performance mainly through the following techniques: removal of copying in the network sub system, compiler-generation of specialized marshaling code, and Optimistic Active Messages, a technique that avoids thread creation in message handlers for small methods. Our work shows that techniques from other high performance RPC based systems also work in Java, making RMI, originally designed for distributed programming, a viable mechanism for parallel programming as well. 1

Citations

926 Active Messages: A mechanism for integrated communication and computation – Eicken, Culler, et al. - 1992
784 Myrinet: A Gigabit-per-second Local Area Network – Boden, Cohen, et al. - 1995
477 TreadMarks: Distributed shared memory on standard workstations and operating systems – Keleher, Dwarkadas, et al. - 1994
291 High Performance Messaging on Workstations: Illinois Fast Messages (FM) for Myrinet – Pakin, Lauria, et al. - 1995
199 High-performance all-software distributed shared memory – Johnson - 1995
154 Parallel programming in split-c – Culler, Dusseau, et al. - 1993
146 Titanium: A high-performance Java dialect. Concurrency Practice and Experience – Yelick, Semenzato, et al. - 1998
127 Java/DSM: A platform for heterogeneous computing. This issue – Yu, Cox - 1997
109 Concurrent Programming in Java – Lea - 2000
79 Toba: Java for Applications: A Way Ahead of Time (WAT) Compiler – Proebsting, Townsend, et al. - 1997
78 Jade: A high-level, machine-independent language for parallel programming – RINARD, SCALES, et al. - 1993
74 Operating System Benchmarking in the Wake of Lmbench: A Case Study of the Performance of on the Intel x86 Architecture – Brown, Seltzer - 1997
63 Performance evaluation of the orca shared object system – Bal, Bhoedjang, et al. - 1998
59 Implementing Remote Procedure Call – Birrel, Nelson - 1984
59 CACAO—A 64-bit JavaVM just-in-time compiler. Concurrency: Pract – KRALL, R - 1997
55 Optimistic active messages: A mechanism for scheduling communication with computation – Wallach, Hsieh, et al. - 1995
46 SPAR: A Programming Language for Semi-automatic Compilat ion of Parallel Programs. Concurrency: Practice and Experience – Reeuwijk, Gemund, et al. - 1997
44 Efficient multicast on myrinet using link-level flow control – Bhoedjang, Ruhl, et al. - 1998
34 Experience with a portability layer for implementing parallel programming systems – Ruhl, Bal, et al. - 1996
33 Remote procedure calls and java remote method invocation – Waldo - 1998
31 An Asynchronous Remote Method Invocation (ARMI) Mechanism for Java – Raje, Williams, et al. - 1997
28 JavaParty—Transparent remote objects in Java – PHILIPPSEN, M - 1997
21 Performance of a high-level parallel language on a high-speed network – BAL, BHOEDJANG, et al. - 1997
15 Models for asynchronous message handling – LANGENDOEN, BHOEDJANG, et al. - 1997
12 Java Network Programming – Harold - 1997
7 Fast Parallel Java – Maassen, Nieuwpoort - 1998
5 IceT: Distributed computing and java. concurrency: practice and experience – Gray, Sunderam - 1997
2 a mixed offline compiler and interpreter for dynamic class loading – Harissa - 1997
2 a native Java compiler – Jcc - 1998
1 Bridging the gap between shared memory and message passing – Karl - 1998