Benefitting Humanity with Your Unused CPU Cycles

Date February 5, 2008

My CPU usage while running typical applicationsDid you know that you’re likely using only a small fraction of your computer’s processing power at any given time? It’s true, see for yourself: press Ctrl + Alt + Del at the same time and then click on the “Task Manager” button to bring up the Windows task manager. Under the Performance tab you’ll see some graphs. The top left graph is your CPU usage and it’s probably around 10% or less.

This means that about 90% of your computer’s processing power is not being utilized, which is fine, but you could be helping to cure cancer, or AIDS, create new drugs for a plethora of other uses, or even solve global warming. How? In two words: distributed computing.

Distributed computing allows researchers to solve very complex problems by leveraging the power of the internet and the computers connected to it. At any given moment there are thousands upon thousands of computers online that can be contributing to the processing power of a distributed computing project. The only problem is how to harness this potential power.

The Solution is Free

There are a few solutions to the problem of harnessing the untapped computing potential of the wired world. All of them are free. The solution I use is software called BOINC (Berkeley Open Infrastructure for Network Computing). BOINC is a small program that runs in the background to crunch numbers when there’s CPU time available. You can set the software to run all the time (you don’t notice any loss in performance on today’s computers), during certain times only (like while you’re sleeping or at work), or after a given time of inactivity on your computer (so you can help save the world while in the bathroom).

Today’s modern processors are fast enough to run BOINC around the clock without the user noticing any hit in performance. Unless you’re doing CPU intensive work BOINC can be set to “always on” to maximize your contribution. If your computer’s CPU usage isn’t at 100%, you’re wasting cycles!

The World Community GridOnce you have the inclination and the software required, you then need to join a project (or multiple projects) to help share your computer’s resources. There are many projects out there, but I recommend the World Community Grid. The WCG’s mission statement is “to create the largest public computing grid benefiting humanity.” Basically they want to get as many people online as possible to help solve problems important to humanity. These problems are typically related to finding drugs to cure diseases like cancer and AIDS.

Of course, the choice of what projects to crunch is up to you. The projects range from drug research, to the Search for Extra Terrestrial Intelligence (SETI), to climate prediction.

Another interesting aspect of distributed computing is the social interaction. Contributors (called “crunchers”) can act solo or join teams of other crunchers. Teams can be anything from a community, to an office or company, or even a group of people with similar interests.

Moving from Good to Great

Distributed computing really is a simple, hands-off approach to solving problems. Its popularity is gaining, but the major resources have yet to be tapped. The business world is the biggest untapped resource. Pretty much everyone who works in an office has a computer at their desk. Even worse, most of these computers are left running all day and night, whether the employee is at their desk, in a meeting, or at home. Corporations need to harness these resources to help contribute to these projects. With their contribution, projects can be solved faster than ever before and make the world a better place.

Another potential resource that is becoming more prevalent is game consoles. Most newer game consoles have serious computer power and are connected to the internet. There is no reason why these couldn’t be pre-programmed with BOINC-like software to crunch while they’re not being used. In fact, Wired published an article on such an idea. Hopefully the manufacturers are listening.

Similarly, 3D graphics cards offer very fast processors and their own RAM (essentially they are their own computer residing inside your computer). Some companies are catching on. AMD’s ATI graphics card manufacturer now supports distributed computing on their newer graphics boards. Let’s hope that this trend catches on.

Leave a Reply

XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>