What is volunteer computing?

Volunteer computing is an arrangement in which people (volunteers) provide computing resources to projects, which use the resources to do distributed computing and/or storage.

Several aspects of the project/volunteer relationship are worth noting:

The first volunteer computing project was GIMPS (Great Internet Mersenne Prime Search), which started in 1995. Other early projects include distributed.net, SETI@home, and Folding@home. Today there are at least 50 active projects.

Why is volunteer computing important?

It's important for several reasons:

How does it compare to 'Grid computing'?

It depends on how you define 'Grid computing'. The term generally refers to the sharing of computing resources within and between organizations, with the following properties:

This is much different from volunteer computing.

If your definition of 'Grid computing' encompasses all distributed computing (which is silly - there's already a perfectly good term for that) then volunteer computing is a type of Grid computing.

Is it the same as 'peer-to-peer computing'?

No. 'Peer-to-peer computing' describes systems such as Napster, Gnutella, and Freenet, in which files and other data are exchanged between 'peers' (i.e. PCs) without the involvement of a central server. This differs in several ways from volunteer computing:


1 An exception: GPU (Global Processing Unit) is a Gnutella client that allows users to share CPU resources. "; ?>