Ibis: a flexible and efficient Java‐based Grid programming environment
- 23 February 2005
- journal article
- research article
- Published by Wiley in Concurrency and Computation: Practice and Experience
- Vol. 17 (7-8) , 1079-1107
- https://doi.org/10.1002/cpe.860
Abstract
In computational Grids, performance‐hungry applications need to simultaneously tap the computational power of multiple, dynamically available sites. The crux of designing Grid programming environments stems exactly from the dynamic availability of compute cycles: Grid programming environments (a) need to beportableto run on as many sites as possible, (b) they need to beflexibleto cope with different network protocols and dynamically changing groups of compute nodes, while (c) they need to provideefficient(local) communication that enables high‐performance computing in the first place. Existing programming environments are either portable (Java), or flexible (Jini, Java Remote Method Invocation or (RMI)), or they are highly efficient (Message Passing Interface). No system combines all three properties that are necessary for Grid computing. In this paper, we present Ibis, a new programming environment that combines Java's ‘run everywhere’ portability both with flexible treatment of dynamically available networks and processor pools, and with highly efficient, object‐based communication. Ibis can transfer Java objects very efficiently by combining streaming object serialization with a zero‐copy protocol. Using RMI as a simple test case, we show that Ibis outperforms existing RMI implementations, achieving up to nine times higher throughputs with trees of objects. Copyright © 2005 John Wiley & Sons, Ltd.Keywords
This publication has 24 references indexed in Scilit:
- Efficient Java RMI for parallel programmingACM Transactions on Programming Languages and Systems, 2001
- Multiparadigm communications in Java for grid computingCommunications of the ACM, 2001
- Parallel application experience with replicated method invocationConcurrency and Computation: Practice and Experience, 2001
- Wide-area implementation of the Message Passing InterfaceParallel Computing, 1998
- Remote procedure calls and Java Remote Method InvocationIEEE Concurrency, 1998
- Performance evaluation of the Orca shared-object systemACM Transactions on Computer Systems, 1998
- The Legion vision of a worldwide virtual computerCommunications of the ACM, 1997
- Managing Multiple Communication Methods in High-Performance Networked Computing SystemsJournal of Parallel and Distributed Computing, 1997
- Java-centric distributed computingIEEE Micro, 1997
- Limits to low-latency communication on high-speed networksACM Transactions on Computer Systems, 1993