Distributed computing programs offer a chance to use the wasted idle computer time of your own PC to benefit various types of research.
Distributed computing was born in 1995 thanks to the prevalence of the World Wide Web and the ideas of David Gedye, who suggested linking computers together via the internet to supplement the processing power of the Search for ExtraTerrestrial Intelligence (SETI). The result of his work was named SETI@home and began in 1999. Internet users could sign up for the program and run a screen saver that would use a percentage of the computer's idle processing power (specified by the user) to decode radio signals from outer space. SETI at Berkeley uses two programs to search for potential signals of other intelligent life forms: SERENDIP and SETI@Home. SERENDIP is a real-time broad search, and does not require information recording analysis, as it discards a great deal of information. SETI@Home is quite the opposite: it scours data thoroughly utilizing Fourier transforms, the math of which is moderately complex and can be mostly simply defined as multivariable signal analysis. To perform this in-depth analysis, massive amounts of computer time are required. Researchers had a choice: they could pay a premium for supercomputer time, or they could involve individual PC's for the cost of programming and some server operations.
This is where the distributed computing aspect of SETI@Home comes in. Radio signals can be divided into small files and disseminated to any of the numerous computers within the system (at last count, over 180,000 active users). The user's computer then uses idle processor time to analyze the radio transmission sample, and returns it to Berkeley when work is complete. The project can send out the same file to numerous computers for repeatable results, and if a significant signal is discovered by a PC, it can then run more directly through the file to check for high-powered signals. Needless to say, alien signals have not been found. But radio source SHGb02+14a did make news when researchers realized that it had some unusual characteristics. Researchers do point out that the signal is an unlikely source, but the program is what allows them to sift through the gargantuan data stream to analyze signals like this.
If aliens aren't your thing, don't worry. Distributed computing has much more to offer the world than a search for distant radio signals, although enthusiasm remains high for SETI@Home, which is currently calculating data at a rate of nearly 753 trillion floating point operations per second (TeraFlops). If that just sounded like a foreign language to you, it's easier to say that on the list of the fastest supercomputers in the world, the SETI@Home network would rank 5th. That represents a huge savings in computer time. Distributed computing is a remarkably efficient system that uses a freely available resource (idle computer time) and the willingness of individuals to volunteer that time to analyzes divisible chunks of data. For a large list of available distributed computing programs, see here: http://distributedcomputing.info/projects.html
Recently, a project entitled Folding@home has taken much of the thunder from SETI@Home. With over 5 million registered computers and 436,000 active ones, Folding@Home now dwarfs the size of the SETI@Home project. It has done so in large part thanks to the incredible processing power of the Playstation 3 and the Nvidia and ATI Graphical Processing Units, which together now contribute approximately 85% of the projects power. If compared to the world's fastest supercomputers, Folding@home's network is more than double the speed of the fastest supercomputer in existence, the red-hot Jaguar - Cray XT5-HE Opteron Six Core 2.6 GHz located at the Oak Ridge National Laboratory in the United States. Folding@home currently calculates at 3,949 trillion floating point operations per second, or 3.9 PetaFlops (3.9 quadrillion or 3.9 X 10^15 flops!). Cray's supercomputing monster only calculates at a rate of approximately 1.7 PetaFlops.
Folding@home's mission is to understand how proteins fold and why the folding does not always work correctly. Folding at Home is operated by the Pande Group from Stanford University (founder Dr. Vijay Pande). Protein folding is an immensely rapid process that can perform thousands of steps in mere microseconds. The Folding@home program, like SETI@Home, uses PCs to simulate fragments of the data and return it to the central server. One thing that probably generates appeal for the program is that a number of papers have been published under the program, which allows users to see the potential results of donating their computer's surplus time.
Just after the year 2000, a number of programs like the GOMEZ Peer application (http://www.gomezpeerzone.com/) began to pop up. They advertised themselves as being distributed for-pay operations: programs that would pay you for your computer time. Most of these programs have shut down, but many users seem to be achieving about $30 a month from the utilization of this program. The top user, ffhxk, has netted almost $3,500, according to the website's front page. Most for-pay programs have shut down, however, and they are not particularly lucrative. Unfortunately, Gomez's pay structure is crafty, and it can take months to be approved for pay. Therefore, Gomez can utilize many members' computers while only paying a fraction of them for their use; this means that it is structured more as a gimmick.
The typical distributed computing experience, therefore, consists of a user downloading a small program from the website of the group they wish their computer to be utilized for. The program then runs in the background and can be controlled with specific tools tabs to fit the user's needs. I have run both Folding@home and SETI@Home on my PC for about five years with no deficiencies in speed or performance as a result. The programs only use surplus power, so if your computer needs all its resources, the distributed program receives none. On the websites of most distributed computing programs, there are statistics pages that allow the user to see how fast their computer is performing and join various teams in the quest to turn in the most results and receive the most points. This has resulted in some entertaining methods of improving user performance, including "farming out" a PC by installing a distributed program and removing all unnecessary programs, then hooking it to an internet connection and leaving it on in a cooled and ventilated room with ten (or maybe even a hundred!) computers suffering the same fate. Some users also overclock their computers, which essentially consists of running higher voltages to boost processor performance. The heat generated from this can necessitate cooling even as extreme as a nitrogen cooling system.
The most notorious case of distributed computing, however, actually made some headline news. David McOwen, who was a computer technician for DeKalb Technical College in Atlanta, Georgia, installed a distributed computing program on a number of the school machines. When computers began accessing the internet at a time when no one was present on the campus, eyebrows were raised. The issue soon reached court, where the massive fines the school system was prepared to levy were reduced to a probation sentence. Because he failed to acquire permission to install this program on the computers, and he violated the standing computer policy of the school district (which exists in similar form in most school systems), McOwen was fired and the precedent was set that distributed computing did not belong on school computers.
Pictured is the Arecibo Radio Observatory in Panama, where SETI@Home receives the data that it distributes to home PCs for analysis.