LGM's?

Home

Little Green Men?

How to run SETI@Home
without wearing out your hard drive.
These instructions are for a computer
running Windows 98 Second Edition.

First of all, in case you didn't know, SETI@Home is a project that looks for evidence of intelligent life outside our solar system. (This kind of assumes there's intelligent life within our solar system, which some of the activities of mankind seem to call into question.) Nonetheless, SETI stands for search for extraterrestrial intelligence.

The project is managed by a lab at the University of California at Berkeley. Recorded radio signals collected by the Arecibo Observatory form the data that is analyzed looking for signals that are not just random cosmic noise. The idea is that we here on earth "leak" radio signals into space in abundance. Most of our radio activity just blasts off into space in all directions. So, it follows that any advanced civilization elsewhere will do the same. The Arecibo Observatory is the world's largest radio telescope situated in Puerto Rico in a natural bowl shaped valley which forms the telescope dish.

So why the @home part? Well, it turns out that the Universe is a pretty big place, and to effectively search it takes an enormous amount of computer power to analyze the signals collected. In fact, it's a task far too big for even the largest most powerful supercomputer in existence. To tackle this enormous task, the project utilizes unused microprocessor cycles in private home computers. It turns out that most of the time, even while someone is working on their computer, the microprocessor has nothing to do and executes a "do nothing" command until the next time it's needed. This isn't surprising since the microprocessor runs at millions (or nowadays billions) of cycles per second. So SETI@Home is a program that runs in the background and uses all this wasted computing power to analyze these signals.

Each participating computer gets a chunk of data from the Internet and then works on it till it's done. The computer then sends the results and gets a new chunk. Multiply this by 4,725,479, which is the number of participants in this project as of this writing (10/25/03), and you wind up with what is called a distributed supercomputer. Such systems far outperform any single computer in existence. Anyone can help by installing the SETI@Home program on their home computer, so if you're not currently participating, check it out.

But what's this wearing out your hard drive thing? Well, the SETI@Home program keeps accessing your hard drive for bits of data and to write bits of the result. That keeps your hard drive from spinning down when you aren't using your computer. Aside from the cooling fans, the hard drive is the only part of a computer that has moving parts and can wear out. Modern computers can be set to spin down (turn off) the hard drive after a period of inactivity. Since my computer is always doing something useful (due to running SETI@Home), I like to leave it running all the time. But, I worried about the long hours on the hard drive, so I set out to find a way to run SETI@Home without keeping the hard drive running.

This is how I did it, and it works beautifully. The first step was to install what is known as a RAM disk. A RAM disk is a simulated hard drive that is actually a software program that runs in the computer's main electronic memory. The memory had no moving parts and therefore doesn't wear out. I tried to find a freeware program, but despite my lack of funds settled on RAMDisk9xME. This program costs $49, which is a bit pricey for my budget, but to me it's worth it, and it's always useful for many other applications.

Now running SETI@Home on this simulated hard disk worked fine, and my physical hard drive did spin down, but I still had a problem. This occurred when SETI@Home would finish a work unit and contact the main lab at Berkeley to send and receive data. Unfortunately, the SETI@Home program doesn't close the internet connection when it's finished. It's documentation tells you to set your Internet Options in the control panel to close the connection after some period of inactivity. Well, you know Windows, it doesn't work. I run ZoneAlarm (a freeware personal firewall) on my computer, and it seems that for whatever reason, the connection never gets idle long enough to actually close by itself. Now, for whatever reason, despite setting ZoneAlarm to keep it's log file on my RAM disk, when ZoneAlarm and the Internet connection (I have Verizon DSL) are active, my hard disk won't spin down. (Apparently something is accessing the hard disk under these circumstances.)

I can manually disconnect the Internet, but five hours later when my machine finishes a work unit, it reconnects and after that my hard disk runs. (Bad software, bad operating system, thank you Bill Gates.)

How did I fix this? Well, I installed a second program that stores SETI@Home work units and results until you want to send and receive them. I looked at several such programs and decided on SetiGate. SetiGate stores as many work units as you tell it too, and then SETI@Home runs through them without accessing the Internet. So now I can leave my machine running all night, and the hard disk sleeps the whole time. Periodically, when I'm on the Internet anyway, I tell SetiGate to send and receive work units. I can easily store enough work for several days if I want to. SetiGate is freeware, and the developer has set up a SETI@Home "group" (SetiGate@Earth) which is part of the competition set up by the Berkeley lab to add interest to the whole project. I joined this group, figuring that it helps to publicize this very nice FREE software.

So, to help you set this up for yourself, I'll give some instructions below.

First of all, a RAM disk uses system memory (random access memory ie RAM). So if you don't have a lot of RAM you might not be able to do this at all. Fortunately, nowadays 128 megs of RAM is more or less common, so using 10 megs for a RAM disk doesn't hurt you. Even if you have 64 megs, you might still get away with it.

RAMDisk9x/ME is pretty straightforward to install. You can use it 100 times before you have to register it and pay the $49. Each time you reboot your machine or manually start the RAM disk counts as one use. The program has a configuration panel that looks like this. The one shown has my settings in it. You must of course install SetiGate on your RAM disk, not on your hard drive. RAMDisk9x/ME has good documentation, so use what they provide to do this.

Once you have your RAM disk installed, you want to uninstall SETI@Home if you already have it and then install SetiGate. If you have never run SETI@Home before you need to first install it on your hard drive, connect to the Internet, and then create an account. Once this is done uninstall it from your hard drive. SetiGate is also pretty simple to install, it has most of the settings defaulted. It comes with a nice instruction manual in Word format with pictures. My settings appear below. Notice that I do not have either of the "log to" options set, as this would use the hard disk and keep it from turning off.

Once SetiGate is installed, you should connect to the Internet and refresh user info and get some work units as the manual instructs. My computer is a 1600 MHz. (1.6 Gigaherts) machine; it finishes a work unit every five hours or so. By comparison, I have another computer here that has a 166 MHz. processor that used to take 54 hours to do a work unit when I ran SETI@Home on it. This will give you an idea of how many work units to cache. Don't cache more than your machine will complete in five days. I currently cache six, which is enough for slightly over one day.

Now install SETI@Home also on your RAM drive. You need to set the preferences to connect automatically.

Then you need to set it's proxy settings to look like the picture below. The http:// proxy should be "localhost" (without the quotes) and the port 5001 to match the local port setting in SetiGate.

Then, making sure your Internet Options control panel is set to "never dial a connection",

and making sure that you are not connected to the Internet and you have no firewall running, (or that your firewall will not prevent SETI@Home from communicating with SetiGate) have SETI@Home log into your account. SETI@Home should immediately get a work unit from SetiGate and begin working.

Now open your Display control panel and select the Screen Saver tab. Towards the bottom click the settings button.

Set your hard disk to turn off at whatever amount of time you want. The picture shows my settings.

Make sure that when you leave your machine for a long period that you do not leave any programs running that will keep the hard disks from turning off. You can test to see if the hard disk has turned off by waiting longer than you set the delay and then opening something that you haven't opened since your last reboot. Some folder or program works well. If your hard disk is off, there will be a noticeable delay for whatever you open to appear.

So now you're set to let your computer run for long hours with your hard disk off and maybe find the Little Green Men out there that everyone's looking for.

Tommy Atkinson.

Download this article as an MS Word doc. Right click this link and choose "save target as".