This Article 
   
 Share 
   
 Bibliographic References 
   
 Add to: 
 
Digg
Furl
Spurl
Blink
Simpy
Google
Del.icio.us
Y!MyWeb
 
 Search 
   
Spawn: A Distributed Computational Economy
February 1992 (vol. 18 no. 2)
pp. 103-117

The authors have designed and implemented an open, market-based computational system called Spawn. The Spawn system utilizes idle computational resources in a distributed network of heterogeneous computer workstations. It supports both coarse-grain concurrent applications and the remote execution of many independent tasks. Using concurrent Monte Carlo simulations as prototypical applications, the authors explore issues of fairness in resource distribution, currency as a form of priority, price equilibria, the dynamics of transients, and scaling to large systems. In addition to serving the practical goal of harnessing idle processor time in a computer network, Spawn has proven to be a valuable experimental workbench for studying computational markets and their dynamics.

[1] G. Agha,Actors: A Model of Concurrent Computation in Distributed Systems. Cambridge, MA: MIT Press, 1986.
[2] A. Barak and A. Shiloh, "A distributed load-balancing policy for a multicomputer,"SPAE, vol. 15, pp. 901-913, 1985.
[3] T. C. K. Chow and J. A. Abraham, "Load balancing in distributed systems,"IEEE Trans. Software Eng., vol. SE-8, pp. 401-412, July 1982.
[4] E. G. Coffman and P. J. Denning,Operating Systems Theory. Englewood Cliffs, NJ: Prentice-Hall, 1973.
[5] R. Davis and R. G. Smith, "Negotiation as a metaphor for distributed problem solving,"Art. Intell., vol. 20, pp. 63-109, 1983.
[6] K. E. Drexler and M. S. Miller, "Incentive engineering for computational resource management," inTheEcology of Computation, B. A. Huberman, Ed. Amsterdam: North-Holland, 1988, pp. 231-266.
[7] A. Dupuy, "Network Simulation Test Bed (NEST) user manual," Computer Sci. Dept., Columbia Univ., CS-NEST, 1986.
[8] J. R. Ellis, "Bulldog: a compiler for VLIW Architectures," Dept. Computer Sci., Yale Univ., YALEU/DCS/RR-364, Feb. 1985.
[9] R. Engelbrecht-Wiggans, M. Shubik, and R. M. Stark,Auctions, Bidding, and Contracting: Uses and Theory. New York: NYU Press, 1983.
[10] D. Ferguson, Y. Yemini, and C. Nickolaou, "Microeconomic algorithms for load balancing in distributed computer systems," inProc. 8th Int. Conf. on Distributed Comput. Syst., 1988, pp. 491-499.
[11] D. Friedman, "On the efficiency of experimental double auction markets,"Amer. Econ. Rev., vol. 24, no. 1, pp. 60-72, Mar. 1984.
[12] M. Hailperin, "Load balancing for massively-parallel soft-real-time systems," Knowledge Systems Lab., Dept. Computer Sci., Stanford Univ., Rep. KSL-88-62, Aug. 1988.
[13] C. Hewitt, "The challenge of open systems,"Byte, vol. 10, pp. 223-242, Apr. 1985.
[14] B. A. Huberman and T. Hogg, "The behavior of computational ecologies," inThe Ecology of Computation. B. A. Huberman, Ed. Amsterdam: North-Holland, 1988, pp. 77-115.
[15] K. M. Kahn and M. S. Miller, "Language design and open systems," inThe Ecology of Computation, B. A. Huberman, Ed. Amsterdam: North-Holland, 1988, pp. 291-313.
[16] K. M. Kahn and V. A. Saraswat, "Money as a concurrent Ionic program," Xerox PARC, Tech. Rep., 1989.
[17] J. O. Kephart, T. Hogg, and B. A. Huberman, "Dynamics of computational ecosystems,"Phys. Rev. A, vol. 40, pp. 404-421, 1989.
[18] D. B. Lenat, "The role of heuristics in learning by discovery: three case studies," inMachine Learning: An Artificial Intelligence Approach, R. S. Michalskiet al., Eds. Palo Alto, CA: Tioga, 1983, pp. 243-306.
[19] B. Liskov and R. Scheifler, "Guardians and actions: linguistic support for robust, distributed programs,"ACM Trans. Program. Languages Syst., vol. 5, no. 3, pp. 381-404, July 1983.
[20] M. J. Litzkow, M. Levy, and M. W. Mutka, "Condor--a hunter of idle workstations," inProc. IEEE Int. Conf. on Distributed Comput. Syst., 1988, pp. 104-111.
[21] V. M. Lo, "Heuristic algorithms for task assignment in distributed systems," inProc. IEEE Int. Conf. on Distributed Comput. Syst., 1984, pp. 30-39.
[22] V. M. Lo and D. Chen, "Intelligent scheduling in distributed computing systems," Dept. Comput. and Inform. Sci., Univ. Oregon, CIS-86-14, Apr. 1987.
[23] E. Lumer and B. A. Huberman, "Dynamics of resource allocation in distributed systems," Xerox PARC, Tech. Rep., Mar. 1990.
[24] T. W. Malone, R. E. Fikes, K. R. Grant, and M. T. Howard, "Enterprise: a market-like task scheduler for distributed computing environments," inThe Ecology of Computation, B. A. Huberman, Ed. Amsterdam: North-Holland, 1988, pp. 177-205.
[25] C. R. Manning, "Acore: an actor core language," AI Lab., MIT, MPSG Apiary Design Note no. 7, Aug. 1987.
[26] M. S. Miller, D. G. Bobrow, E. D. Tribble, and J. Levy, "Logical secrets," inCollected Papers, E. Shapiro, Ed. Cambridge; MA: MIT Press, 1987.
[27] M. S. Miller and K. E. Drexler, "Markets and computation: agoric open systems," inThe Ecology of Computation, B. A. Huberman, Ed. Amsterdam: North-Holland, 1988, pp. 133-176.
[28] M. W. Mutka and M. Levy, "Scheduling remote processing capacity in a workstation-processor bank network," inProc. IEEE Int. Conf. on Distributed Comput. Syst., 1987, pp. 2-9.
[29] J. C. Pasquale, "Intelligent decentralized control in large distributed computer systems," Ph.D. thesis, Univ. California, Berkeley, Apr. 1988.
[30] J. L. Peterson and A. Silberschatz,Operating System Concepts. Reading, MA: Addison-Wesley, 1985.
[31] J. F. Shoch and J. A. Hupp, "The 'Worm' programs--early experience with a distributed computation,"Commun. ACM, vol. 25, no. 3, pp. 172-180, Mar. 1982.
[32] R. G. Smith, "The contract net protocol: high-level communication and control in a distributed problem solver,"IEEE Trans. Computers, vol. C-29, Dec. 1980.
[33] I. M. Sobol,The Monte Carlo Method. Moscow: Mir, 1975.
[34] I. E. Sutherland, "A futures market in computer time,"Commun. ACM, vol. 11, 6, pp. 449-451, June 1968.
[35] A.S. Tanenbaum, "Distributed Operating System,"Computing Surveys, Dec. 1985, pp. 419-470.
[36] D. G. Theriault, "Issues in the design and implementation of Act 2," AI Lab., MIT, Tech. Rep. AI-TR-728, 1983.
[37] C. A. Waldspurger, "A distributed computational economy for utilizing idle resources," Master's thesis, MIT, May 1989.
[38] C. A. Waldspurger, "Priority flow: a framework for abstract, adaptive resource management," MIT, LCS Parallel Software Group, Internal Memo., May 1990 (unpublished).

Index Terms:
distributed computational economy; market-based computational system; Spawn system; idle computational resources; distributed network; heterogeneous computer workstations; coarse-grain concurrent applications; remote execution; concurrent Monte Carlo simulations; fairness; resource distribution; price equilibria; idle processor time; experimental workbench; computational markets; computer networks; Monte Carlo methods; parallel programming
Citation:
C.A. Waldspurger, T. Hogg, B.A. Huberman, J.O. Kephart, W.S. Stornetta, "Spawn: A Distributed Computational Economy," IEEE Transactions on Software Engineering, vol. 18, no. 2, pp. 103-117, Feb. 1992, doi:10.1109/32.121753
Usage of this product signifies your acceptance of the Terms of Use.