Donate Your Idle CPU Time

For those like me who keep their computers at home and at work on all the time, here’s a simple way to put them to use while away: it’s called volunteer computing. Basically, your computer gives some of its resources to assist in various scientific or academic research projects. It’s important because there are > billion computers in the world, but most of them are not being used to anywhere near full capacity, especially sitting idle for hours at a time. By volunteering your computer’s idle CPU time, you can greatly assist in projects such as cancer or DNA research. There are dozens of projects that allow you to donate your computer’s resources.

How this works is by downloading software (i use BOINC), signing up with a project manager, choosing the projects you want to assist, and voila. When your computer is idle for a given amount of time (and connected to the ‘net, of course) it will start crunching the numbers for that project. Think of it as a screen saver that actually does something but be pretty lol.

A (very) recent entry into this field, CharityEngine, which donates whatever it makes from research projects to charities, and one that has the potential for mass adoption because of the ease of use, is a team from Waterloo during Facebook’s annual Hackathon contest.

For more information on volunteer computing, i’ve copied & pasted from BOINC’s website:

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.

  • Volunteers are typically members of the general public who own Internet-connected PCs. Organizations such as schools and businesses may also volunteer the use of their computers.
  • Projects are typically academic (university-based) and do scientific research. But there are exceptions; for example,  GIMPS and (two major projects) are not academic.

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

  • Volunteers are effectively anonymous; although they may be required to register and supply email address or other information, they are not linked to a real-world identity.
  • Because of their anonymity, volunteers are not accountable to projects. If a volunteer misbehaves in some way (for example, by intentionally returning incorrect computational results) the project cannot prosecute or discipline the volunteer.
  • Volunteers must trust projects in several ways:
    • The volunteer trusts the project to provide applications that don’t damage their computer or invade their privacy.
    • The volunteer trusts that the project is truthful about what work is being done by its applications, and how the resulting intellectual property will be used.
    • The volunteer trusts the project to follow proper security practices, so that hackers cannot use the project as a vehicle for malicious activities.

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

Why is volunteer computing important?

It’s important for several reasons:

  • Because of the huge number (> 1 billion) of PCs in the world, volunteer computing can supply more computing power to science than does any other type of computing. This computing power enables scientific research that could not be done otherwise. This advantage will increase over time, because the laws of economics dictate that consumer products such as PCs and game consoles will advance faster than more specialized products, and that there will be more of them.
  • Volunteer computing power can’t be bought; it must be earned. A research project that has limited funding but large public appeal can get huge computing power. In contrast, traditional supercomputers are extremely expensive, and are available only for applications that can afford them (for example, nuclear weapon design and espionage).
  • Volunteer computing encourages public interest in science, and provides the public with voice in determining the directions of scientific research.

Hope to see you donating your idle CPU time 🙂