Jalapeno: secentralized grid computing using peer-to-peer technology

This paper presents the Jalapeno grid computing system. Jalapeno is implemented in Java and uses peer-to-peer technology provided by Project JXTA. The Jalapeno system consists of manager, worker and task submitter hosts. The task submitter submits a collection of tasks, a task bundle, to be processed by the system to a randomly chosen manager. The manager splits the bundle into a set of new, smaller bundles which are forwarded to equally many, randomly chosen, managers which repeat the process. Each manager has a small number of connected workers. During task bundle splitting the manager may, depending on its current load, reserve a number of tasks for its workers. Workers return the results to their managers which forward them to the task submitterThe system is self configuring: hosts volunteering their computing power will at first become workers only but will eventually become managers if they can not connect to another manager within a certain time.The major contributions of this project are: an implicit hierarchy of hosts which changes randomly over time and requires no effort to maintain, a framework for applications solving embarrassingly parallel type of problems which automatically partitions the problem into smaller sub-problems and ease of use through the use of Sun's Java Web Start technology.Two applications have been developed for the system to evaluate its performance: an RC5 key cracking application and a 3d ray-tracing application. The entire system is available for download at http://jalapeno.therning.org.

[1]  Bu-Sung Lee,et al.  JBSP: A BSP Programming Library in Java , 2001, J. Parallel Distributed Comput..

[2]  Rajkumar Buyya,et al.  Compute Power Market: towards a market-oriented grid , 2001, Proceedings First IEEE/ACM International Symposium on Cluster Computing and the Grid.

[3]  Peter R. Cappello,et al.  Javelin++: scalability issues in global computing , 1999, JAVA '99.

[4]  Peter R. Cappello,et al.  Market-based massively parallel Internet computing , 1997, Proceedings. Third Working Conference on Massively Parallel Programming Models (Cat. No.97TB100228).

[5]  Torsten Suel,et al.  BSPlib: The BSP programming library , 1998, Parallel Comput..

[6]  Noam Nisan,et al.  The popcorn project: distributed computation over the internet in java , 1997 .

[7]  Vaidy S. Sunderam,et al.  PVM: A Framework for Parallel Distributed Computing , 1990, Concurr. Pract. Exp..

[8]  Nicholas Carriero,et al.  Linda in context , 1989, CACM.

[9]  Peter R. Cappello,et al.  Javelin: Internet‐based parallel computing using Java , 1997 .

[10]  Zvi M. Kedem,et al.  Charlotte: Metacomputing on the Web , 1999, Future Gener. Comput. Syst..

[11]  Robert D. Blumofe,et al.  Adaptive and Reliable ParallelComputing9 Networks of Workstations , 1997 .

[12]  Peter R. Cappello,et al.  A scalable, robust network for parallel computing , 2001, JGI '01.

[13]  Chris J. Scheiman,et al.  SuperWeb: towards a global Web-based parallel computing infrastructure , 1997, Proceedings 11th International Parallel Processing Symposium.

[14]  Jason Maassen,et al.  Wire-area parallel computing in Java , 1999, JAVA '99.

[15]  Jack Dongarra,et al.  MPI: The Complete Reference , 1996 .

[16]  Luis F. G. Sarmenta,et al.  Volunteer Computing , 1996 .

[17]  Michael O. Neary,et al.  Javelin 2.0: Java-Based Parallel Computing on the Internet , 2000, Euro-Par.

[18]  Scott Oaks,et al.  JXTA in a Nutshell , 2002 .

[19]  Peter R. Cappello,et al.  Javelin: Internet-based Parallel Computing using Java , 1997, Concurr. Pract. Exp..

[20]  Ronald L. Rivest,et al.  The RC5 Encryption Algorithm , 1994, FSE.

[21]  Marko Boger Java in distributed systems - concurrency, distribution and persistence , 2001 .

[22]  David Gelernter,et al.  Supercomputing out of recycled garbage: preliminary experience with Piranha , 1992, ICS '92.

[23]  Greg Ruetsch,et al.  Framework for Peer-to-Peer Distributed Computing in a Heterogeneous, Decentralized Environment , 2002, GRID.

[24]  Bradley C. Kuszmaul,et al.  Cilk: an efficient multithreaded runtime system , 1995, PPOPP '95.

[25]  Luis F. G. Sarmenta,et al.  Sabotage-tolerance mechanisms for volunteer computing systems , 2001, Proceedings First IEEE/ACM International Symposium on Cluster Computing and the Grid.

[26]  Tim Brecht,et al.  ParaWeb: towards world-wide supercomputing , 1996, EW 7.