|
Volunteer computing is a type of distributed computing in which computer owners donate their computing resources (such as processing power and storage) to one or more "projects". It is distinct from Grid computing, which involves sharing of managed computing resources within and between organizations. Distributed computing is a method of computer processing in which different parts of a program run simultaneously on two or more computers that are communicating with each other over a network. ...
Grid computing is an emerging computing model that provides the ability to perform higher throughput computing by taking advantage of many networked computers to model a virtual computer architecture that is able to distribute process execution across a parallel infrastructure. ...
History The first volunteer computing project was the Great Internet Mersenne Prime Search, which was started in January 1996 [1]. It was followed in 1997 by distributed.net. In 1997 and 1998 several academic research projects developed Java-based systems for volunteer computing; examples include Bayanihan[2], Popcorn[3], Superweb [4] and Charlotte[5] . The term "volunteer computing" was coined by Luis F. G. Sarmenta, the developer of Bayanihan. The Great Internet Mersenne Prime Search, or GIMPS, is a collaborative project of volunteers, who use Prime95 and MPrime, special software that can be downloaded from the Internet for free, in order to search for Mersenne prime numbers. ...
The distributed. ...
In 1999 the SETI@home and Folding@home projects were launched. These projects received considerable media coverage, and each one attracted several hundred thousand volunteers. SETI@home logo SETI@home (SETI at home) is a distributed computing project using Internet-connected computers, hosted by the Space Sciences Laboratory, at the University of California, Berkeley, in the United States. ...
Folding@home (also known as FAH or F@H) is a distributed computing project designed to perform computationally intensive simulations of protein folding and other molecular dynamics simulations. ...
Between 1998 and 2002, several companies were formed with business models involving volunteer computing. Examples include Entropia and United Devices. Entropia, Inc. ...
United Devices, Inc. ...
Volunteer computing projects See a list of distributed computing projects. A list of distributed computing projects. ...
Middleware for volunteer computing The client software of the early volunteer computing projects consisted of a single program that combined the scientific computation and the distributed computing infrastructure. This monolithic architecture was inflexible; for example, it was difficult to deploy new application versions. More recently, volunteer computing has moved to middleware systems that provide a distributed computing infrastructure independently of the scientific computation. Examples include: - XtremWeb is used primarily as a research tool. It is developed by a group based a University of Paris - South.
- Xgrid is developed by Apple. Its client and server components run only on Mac OS X.
Most of these systems have the same basic structure: a client program runs on the volunteer's computer. It periodically contacts project-operated servers over the Internet, requesting jobs and reporting the results of completed jobs. This "pull" model is necessary because many volunteer computers are behind firewalls that don't allow incoming connections. The system keeps track of each user's "credit", a numerical measure of how much work that user's computers have done for the project. The Berkeley Open Infrastructure for Network Computing (BOINC) is a distributed computing infrastructure, originally developed out of the SETI@home project, but intended to be useful to fields beyond SETI. The software is free/open source software, released under the GNU Lesser General Public License. ...
The Space Sciences Laboratory (SSL) is run by the University of California, Berkeley. ...
Volunteer computing systems must deal with several problematic aspects of the volunteered computers: their heterogeneity, their churn (that is, the arrival and departure of hosts), their sporadic availability, and the need to not interfere with their performance during regular use. In addition, volunteer computing systems must deal with several related problems related to correctness: - Volunteers are unaccountable and essentially anonymous.
- Some volunteer computers (especially those that are overclocked) occasionally malfunction and return incorrect results.
- Some volunteers intentionally return incorrect results or claim excessive credit for results.
One common approach to these problems is "replicated computing", in which each job is performed on at least two computers. The results (and the corresponding credit) is accepted only if they agree sufficiently.
Notes - ^ GIMPS History.
- ^ Sarmenta, L.F.G. "Bayanihan: Web-Based Volunteer Computing Using Java". Lecture Notes in Computer Science 1368, Springer-Verlag, 1998. pp. 444-461. Proc. of the 2nd International Conference on World-Wide Computing and its Applications (WWCA'98), Tsukuba, Japan, March 3-4, 1998
- ^ Regev, O. and Nisan, N. "The POPCORN market~Wan online market for computational resources". In Proceedings of the First international Conference on information and Computation Economies (Charleston, South Carolina, United States, October 25 - 28, 1998). ACM Press, New York, NY, 148-157
- ^ A.D.Alexandrov, M.Ibel, K.E.Schauser, K.E.Scheiman. "SuperWeb: Research issues in Java-Based Global Computing". In Proceedings of the Workshop on Java for High performance Scientific and Engineering Computing Simulation and Modelling. Syracuse University, New York, 1996
- ^ Baratloo, A., Karaul, M., Kedem, Z., Wyckoff, P.: Charlotte: Metacomputing on the Web. Proc. of the 9th International Conference on Parallel and Distributed Computing Systems. (Sep. 1996)
|