The PaCMAn Metacomputer: parallel computing with Java mobile agents

Abstract The PaCMAn (parallel computing with Java mobile agents) Metacomputer launches multiple Java mobile agents that communicate and cooperate to solve problems in parallel. Each mobile agent can travel anywhere in the Web to perform its tasks. A number of brokers/load forecasters keep track of the available resources and provide load forecast to the clients. The clients select the servers that they will utilize based on the specific resource requirements and the load forecast. The PaCMAn mobile agents are modular; the mobile shell is separated from the specific task code of the target application. To this end, we introduce the concept of TaskHandlers which are Java objects capable of implementing a particular task of the target application. TaskHandlers are dynamically assigned to PaCMAn’s mobile agents. We have developed and tested a prototype system with several applications such as parallel Web querying, a prime number generator, the trapezoidal rule and the RC5 cracking application. Our results demonstrate that PaCMAn provide very good parallel efficiency.

[1]  Katherine Yelick,et al.  Titanium: a high-performance Java dialect , 1998 .

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

[3]  Katherine A. Yelick,et al.  Titanium: A High-performance Java Dialect , 1998, Concurr. Pract. Exp..

[4]  Adam Ferrari,et al.  JPVM: network parallel computing in Java , 1997, Concurr. Pract. Exp..

[5]  Danny B. Lange,et al.  Programming and Deploying Java¿ Mobile Agents with Aglets¿ , 1998 .

[6]  Evaggelia Pitoura,et al.  Mobile agents for WWW distributed database access , 1999, Proceedings 15th International Conference on Data Engineering (Cat. No.99CB36337).

[7]  Jeff Nelson Programming Mobile Objects with Java , 1999 .

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

[9]  K. Mani Chandy,et al.  A world-wide distributed system using Java and the Internet , 1996, Proceedings of 5th IEEE International Symposium on High Performance Distributed Computing.

[10]  James E. White,et al.  Mobile Agents , 1997, Lecture Notes in Computer Science.

[11]  Gene Tsudik,et al.  Itinerant Agents for Mobile Computing , 1995, IEEE Communications Surveys & Tutorials.

[12]  Marios D. Dikaiakos,et al.  Mobile agent platforms for Web databases: a qualitative and quantitative assessment , 1999, Proceedings. First and Third International Symposium on Agent Systems Applications, and Mobile Agents.

[13]  Vladimir Getov,et al.  High-Performance Parallel Programming in Java: Exploiting Native Libraries , 1998, Concurr. Pract. Exp..

[14]  Paraskevas Evripidou,et al.  Parallel computing using Java mobile agents , 1999, Proceedings 25th EUROMICRO Conference. Informatics: Theory and Practice for the New Millennium.

[15]  Evaggelia Pitoura,et al.  Data Management for Mobile Computing , 1997, The Kluwer International Series on Advances in Database Systems.

[16]  Alan L. Cox,et al.  Java/DSM: A Platform for Heterogeneous Computing , 1997, Concurr. Pract. Exp..

[17]  Ahmed Patel,et al.  Cracking RC5 with Java applets , 1998 .

[18]  Ahmed Patel,et al.  Cracking RC5 with Java applets , 1998, Concurr. Pract. Exp..

[19]  Richard Wolski,et al.  The network weather service: a distributed resource performance forecasting service for metacomputing , 1999, Future Gener. Comput. Syst..

[20]  Evaggelia Pitoura,et al.  Mobile agent procedures: metacomputing in Java , 1999, Proceedings. 19th IEEE International Conference on Distributed Computing Systems. Workshops on Electronic Commerce and Web-based Applications. Middleware.

[21]  Satoshi Hirano,et al.  Bayanihan: building and studying web-based volunteer computing systems using Java , 1999, Future Gener. Comput. Syst..

[22]  Alan L. Cox,et al.  Java/DSM: A platform for heterogeneous computing , 1997 .