Self-Organizing Scheduling on the Organic Grid

The Organic Grid is a biologically inspired and fully decentralized approach to the organization of computation that is based on the autonomous scheduling of strongly mobile agents on a peer-to-peer network. Through the careful design of agent behavior, the emerging organization of the computation can be customized for different classes of applications. In this paper, we report on our experience in adapting the general framework to run two representative applications on our Organic Grid prototype: the National Center for Biotechnology Information (NCBI) basic local alignment search tool (BLAST) code for sequence alignment, and the Cannon's algorithm for matrix multiplication. The first is an example of independent task application, a type of application commonly used for grid scheduling research because of its easily decomposable nature and absence of intra-node communication. The second is a popular block algorithm for parallel matrix multiplication, and represents a challenging application for grid platforms because of its highly structured and synchronous communication pattern. Agent behavior completely determines the way computation is organized on the Organic Grid. We intentionally chose two applications at opposite ends of the distributed computing spectrum having very different requirements in terms of communication topology, resource use, and response to faults. We detail the design of the agent behavior and show how the different requirements can be satisfied. By encapsulating application code and scheduling functionality into mobile agents, we decouple both computation and scheduling from the underlying grid infrastructure. In the resulting system, every node can inject a computation onto the grid; the computation naturally organizes itself around available resources.

[1]  A. Turing The chemical basis of morphogenesis , 1952, Philosophical Transactions of the Royal Society of London. Series B, Biological Sciences.

[2]  Lynn Elliot Cannon,et al.  A cellular computer to implement the kalman filter algorithm , 1969 .

[3]  John F. Shoch,et al.  The “worm” programs—early experience with a distributed computation , 1982, CACM.

[4]  Miron Livny,et al.  Condor-a hunter of idle workstations , 1988, [1988] Proceedings. The 8th International Conference on Distributed.

[5]  E. Myers,et al.  Basic local alignment search tool. , 1990, Journal of molecular biology.

[6]  John F. Shoch,et al.  The “worm” programs—early experience with a distributed computation , 1982, CACM.

[7]  Tim Kindberg,et al.  Adaptive parallelism under Equus , 1994, Proceedings of 2nd International Workshop on Configurable Distributed Systems.

[8]  Carlo Ghezzi,et al.  Analyzing Mobile Code Languages , 1996, Mobile Object Systems.

[9]  Andrew S. Grimshaw,et al.  The Legion vision of a worldwide virtual computer , 1997, Commun. ACM.

[10]  Gage Js,et al.  The great Internet Mersenne prime search. , 1998 .

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

[12]  Robert A. Ghanea-Hercock,et al.  Co-operating mobile agents for distributed parallel processing , 1999, AGENTS '99.

[13]  Danny B. Lange,et al.  Seven good reasons for mobile agents , 1999, CACM.

[14]  P. D. Coddington,et al.  Scheduling Independent Tasks on Metacomputing Systems , 1999 .

[15]  R. F. Freund,et al.  Dynamic matching and scheduling of a class of independent tasks onto heterogeneous computing systems , 1999, Proceedings. Eighth Heterogeneous Computing Workshop (HCW'99).

[16]  David Abramson,et al.  High performance parametric modeling with Nimrod/G: killer application for the global grid? , 2000, Proceedings 14th International Parallel and Distributed Processing Symposium. IPDPS 2000.

[17]  Peter M. A. Sloot,et al.  Hiërarchical Job Scheduling for Clusters of Workstations , 2000 .

[18]  Peter M. A. Sloot,et al.  Simulating Job Scheduling for Clusters of Workstations , 2000, HPCN Europe.

[19]  Miron Livny,et al.  Adaptive Scheduling for Master-Worker Applications on the Computational Grid , 2000, GRID.

[20]  Richard Wolski,et al.  Analyzing Market-Based Resource Allocation Strategies for the Computational Grid , 2001, Int. J. High Perform. Comput. Appl..

[21]  Jeffrey M. Bradshaw,et al.  Terraforming Cyberspace , 2001, Computer.

[22]  Mark Handley,et al.  A scalable content-addressable network , 2001, SIGCOMM '01.

[23]  David R. Karger,et al.  Chord: A scalable peer-to-peer lookup service for internet applications , 2001, SIGCOMM '01.

[24]  Stephen J. Wright,et al.  Near-optimal adaptive control of a large grid application , 2002, ICS '02.

[25]  E. Bonabeau,et al.  Spatial patterns in ant colonies , 2002, Proceedings of the National Academy of Sciences of the United States of America.

[26]  Barbara Webb,et al.  Swarm Intelligence: From Natural to Artificial Systems , 2002, Connect. Sci..

[27]  Frances M. T. Brazier,et al.  Multi-Agent Support for Internet-Scale Grid Management , 2002 .

[28]  Hein Meling,et al.  Messor: Load-Balancing through a Swarm of Autonomous Agents , 2002, AP2PC.

[29]  Larry Carter,et al.  Autonomous protocols for bandwidth-centric scheduling of independent-task applications , 2003, Proceedings International Parallel and Distributed Processing Symposium.

[30]  Ian T. Foster,et al.  MPICH-G2: A Grid-enabled implementation of the Message Passing Interface , 2002, J. Parallel Distributed Comput..

[31]  M. Shields,et al.  Chapter 1 RESOURCE MANAGEMENT OF TRIANA P2P SERVICES , 2003 .

[32]  Andrew A. Chien,et al.  Entropia: architecture and performance of an enterprise desktop grid system , 2003, J. Parallel Distributed Comput..

[33]  Francine Berman,et al.  Adaptive Computing on the Grid Using AppLeS , 2003, IEEE Trans. Parallel Distributed Syst..

[34]  Gerald Baumgartner,et al.  Implementation of strong mobility for multi-threaded agents in Java , 2003, 2003 International Conference on Parallel Processing, 2003. Proceedings..

[35]  Mario Lauria,et al.  Application-specific scheduling for the organic grid , 2004, Fifth IEEE/ACM International Workshop on Grid Computing.

[36]  ASCENT: Adaptive Self-Configuring sEnsor Networks Topologies , 2004, IEEE Trans. Mob. Comput..

[37]  Jie Wu,et al.  Guest Editors' Introduction: Ad Hoc Networks , 2004, Computer.

[38]  H. Meinhardt,et al.  A theory of biological pattern formation , 1972, Kybernetik.

[39]  F. Zambonelli,et al.  Co-Fields : A Physically Inspired Approach to Distributed Motion Coordination , 2004 .

[40]  Mario Lauria,et al.  Application-specific scheduling for the organic grid , 2004, 2004 IEEE International Conference on Cluster Computing (IEEE Cat. No.04EX935).

[41]  A. Chakravarti,et al.  The organic grid: self-organizing computation on a peer-to-peer network , 2004, International Conference on Autonomic Computing, 2004. Proceedings..

[42]  Franco Zambonelli,et al.  Co-Fields: A Physically Inspired Approach to Motion Coordination , 2004, IEEE Pervasive Comput..

[43]  Ian T. Foster,et al.  Condor-G: A Computation Management Agent for Multi-Institutional Grids , 2004, Cluster Computing.

[44]  Jarek Nabrzyski,et al.  Grid Resource Management , 2004 .

[45]  Christian Bettstetter,et al.  Self-organization in communication networks: principles and design paradigms , 2005, IEEE Communications Magazine.

[46]  Öznur Özkasap,et al.  Ad-Hoc Networks , 2008, Encyclopedia of Algorithms.