A few weeks back I talked about how to use that underutilized kick-ass resources of your pc to save lives. I think I became ‘too emotional‘ in that post that I may have forgotten to fully explain how you could save lives with your computer.
In essence all we’re going to talk about this time is about volunteer computing.
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 distributed.net (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, there is no way for a project to link them 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: 1) the volunteer trusts the project to provide applications that don’t damage their computer or invade their privacy; 2) 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; 3) 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 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:
* Because of the huge number of PCs in the world, volunteer computing can (and does) 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 electronics (PCs and game consoles) will advance faster than more specialized products, and that there will simply 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 (such as SETI@home) 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.
That’s the principle, here’s how it actually works
So now you understand what volunteer computing is, and you’re all set to join in and volunteer your pc’s idle time and resources to a great cause. How do you do it?
You go to the internet, particularly to the BOINC website, there you would find a list of projects in which you could volunteer to join and help in its completion. These projects range from predicting global climate change, searching for extra-terrestial life, predicting the outcomes of medical experiments that would be used for combating human diseases and other projects that could use your extra computing power.
I myself, in particular have joined two projects; the Rosetta@home and the Folding@home(which JD too is a participant) both are concerned with protein-folding which would greatly help us in curing diseases like cancer, parkinson’s, alzheimer’s etc.
You could join other projects as well depending upon your preferences. Once you’ve chosen your project, you download a piece of free and open-source software that will take care of the ‘hard work’ and turn your computer into a member of a world-wide network of desktop PCs helping to perform the computations to complete the project. You would also have to register for free, as a member in order for you to specify how much of your PC’s time and resources (e.g. disk space, bandwidth, processor time etc) would be devoted to the project. The picture below will better explain what I mean.
Once you’ve downloaded and installed the client-software, it will contact the main server and requests/downloads the amount and portion of the project according to the preferences you set in your account. It’s really easy, so you wouldn’t have to worry about your machine getting wrecked or broken down because of the project. I set mine to use only 30% of my pc’s resources since I could spare and share that much.
After you’ve set everything up, the software or project manager would only kick in and start working once your PC is idle or not in use. It could also be synchronized with your screensaver. Once the your computer is done with is share of the computing load, the project manager will again connect to the main project server and upload the results and this gets published in the project’s website announcing to the world that the project has completed another positive step all thanks to your generosity and kick-ass pc. There are even features that will allow you to view the status of the project or the results of your own computation in glorious colored, sometimes animated, graphics.
The cycle starts over again until the over-all project completes itself again thanks to the thousands of kind-hearted individuals like yourself who have volunteered their spare computing time and resources for a great cause.
So what are you waiting for? Go on and join in and become a computer volunteer! 😀