
A busy computer is a happy computerGive your computer(s) a hobby! 
Computers spend most of their time waiting for the next keystroke. Here are some distributed processing projects that could keep them usefully employed. (900 words)
Mail this article to a friend 
lthough some computers (e.g., mainframes and supercomputers) work continuously, most computers have a great deal of free time. Desktop machines, in particular, spend most of their time waiting for the next keystroke. For that matter, most servers have significant periods of time each day when they aren't running at anything like full capacity.
In short, most of our machines have processing time to burn. Why not find some useful outlets for all of this excess energy? Here are some interesting (and possibly useful) distributed processing projects that you might wish to consider joining.
SETI@home
The Search for Extraterrestrial Intelligence (SETI) is a real long
shot; lottery tickets and progressive slot machines are sure
things in comparison. On the other hand, the payoff  finding an
extraterrestrial, intelligent life form  seems to many folks to be
worth a try. And, given that your computer's idle time would be
wasted otherwise, why not use it to search this very large haystack
for candidate needles?
The SETI@home project collects radio astronomy data and parcels it
out to volunteer machines for processing. The input file, called work_unit.txt
, is a smallish (384 KB) text file, containing both header information and some ASCIIencoded data.
The documentation indicates that this paltry snippet of data will keep a G3 Power Macintosh crunching for about two days. In short, this is a really computationintensive project; you needn't worry about using large chunks of either disk storage or Internet bandwidth.
I'm a little fuzzy about the exact calculations that are being done, but they involve Fast Fourier Transformations (FFT) and related sorts of frequencybased, datacharacterization calculations. That is, the computer looks for periodic patterns in the data, reporting "interesting" patterns back to the SETI@home folks for closer examination.
The Macintosh version of the SETI@home software gets high marks for presentation. It provides continuous visual feedback on the FFT results, nicely formatted as a 3D histogram. Annotations supply some informative context (data recording source and time, search frequencies, etc.), making it all a bit more real for science groupies like me.
The SETI@home project has attracted a great deal of support. As of July 13, nearly 800,000 volunteers have signed up. Many of the volunteers are running the software on multiple machines, so the total amount of computing power involved is staggering, possibly exceeding a million CPUs.




GIMPS and PiHex
If you'd rather invest your computer's efforts on a sure thing, you
might consider joining GIMPS (the Great Internet Mersenne Prime
Search) or PiHex (a distributed project to calculate pi). There
isn't any real question about whether a given prime number can be
found; it just takes a lot of processing time.
GIMPS concentrates its efforts on Mersenne primes, prime numbers which can be expressed as 2^{P}1. The project has found four such primes to date: 2^{1,398,269}1, 2^{2,976,221}1, 2^{3,021,377}1, and 2^{6,972,593}1. The latter, discovered on June 1, is the 38th known Mersenne prime, and currently the largest known prime of any sort.
The project provides a diverse set of clients. Pentium users (running either Linux or Microsoft OSs), Power Macintosh users (running Mac OS), and users of various Unix systems (if they have access to C or Fortran) can all participate.
PiHex has already calculated the forty trillionth bit of pi and is now working on the quadrillionth bit (two trillionth hex digit). Unfortunately, the project uses Pentiumbased assembly language software, and I don't see any support for nonMicrosoft environments. Consequently, I won't be running it any time soon, but Windows users might want to give it a shot.
Distributed.net
The folks at Distributed.net are interested in all sorts of
applications for distributed processing, but their current projects
are concentrated in the mathematical and cryptographic realms.
Distributed.net's current mathematical project involves finding larger Optimal Golomb Rulers. Quoting from its Web page:
In mathematics, the term "Golomb Ruler" refers to a set of nonnegative integers such that no two distinct pairs of numbers from the set have the same difference. Conceptually, this is similar to a ruler constructed in such a way that no two pairs of marks measure the same distance.An Optimal Golomb Ruler (OGR) is the shortest Golomb Ruler possible for a given number of marks. OGRs have many applications, including radio astronomy and sensor placements for Xray crystallography.
Distributed.net is also doing a pair of cryptographic projects. Project RC564 (aka Project Bovine) is taking on the RSA Data Security SecretKey Challenge for 64bit keys, having successfully cracked the preceding (56bit) key.
Project DES (aka Project Monarch) is history now. The Distributed.net crew, working with the EFF's DES Cracker, broke the US government's standard data encryption algorithm (Data Encryption Standard, or DES) in less than one day. (So much for governmentapproved encryption!)
PVMPOVRay
If you'd like to create raytraced images, and have a batch of
computers available, you might want to look into PVMPOVRay. This
is an adaptation of the Persistence Of Vision (POV) raytracer for
use with the Parallel Virtual Machine (PVM). Some really gorgeous
examples of POV output, by the way, can be found on the Persistence
Of Vision Hall Of Fame (see Resources).

Resources
About the author
Rich Morin operates Prime Time
Freeware (www.ptf.com), a publisher of books about open source software. He lives in San Bruno, CA, on the San Francisco peninsula.
If you have technical problems with this magazine, contact webmaster@sunworld.com
URL: http://www.sunworld.com/swol071999/swol07silicon.html
Last modified: