CLIENT TIPS

Hardware Freaks who refuse to be satisfied with 'good enough'

 

LAMB CHOP HOME

JOIN TEAM LAMB CHOP

TEAM STATISTICS

SETI BENCHMARKING

SETI TIPS, FAQs et. al.

L2 LATENCY

SPEED TIPS

SETI ADDONS

ARCHIVES

PUBLIC QUEUES

ARS SUPERCOMPUTER

SETI@HOME PAGE

ARS SETI & RC5 FORUM

TEAM BEEF ROAST

TEAM CHILI PEPPER

TEAM CRAB CAKE

TEAM EGG ROLL

TEAM FROZEN YOGURT

TEAM PRIMORDIAL SOUP

TEAM PRIME RIB

TEAM STIR FRY

TEAM VODKA MARTINI

THE SUSHI BAR

ARS TECHNICA

LINKAGE

 

PERSONAL STATS LOOKUP:
SETI@Home ACCOUNT:

COMMENTS? EMAIL: WEBMASTER
(remove NO.SPAM)

Mad props go out to IronBits for hosting the site and all the others who have kept this site going for the past couple of years!.

  • blah
    • blah
 
SETI Driver  ---  by Poof


Overview

So... you've overheard a couple of friends talking about some "distributed processing" program that they are all running on their PCs called SETI@home. You asked for more details and came to find out that this SETI (Search for Extra-Terrestrial Intelligence) group, using the Arecebo Radio Telescope in Puerto Rico (the largest in the world), is sifting through the many terabytes of data being generated by it, in hopes of detecting some radio signal that might indicate that there really is life on other worlds.

You figured that this would be a neat thing to do and you saw the screensaver and thought it was cool. So you decided to take the plunge. And soon the plunge becomes an addiction, as your machine(s) race(s) its/their way through work unit after work unit of data in search of that elusive something...

Needless to say, with over 2 million computer owners who felt the same way and who have signed up to particpate, the data servers in Berkeley are surely taken a beating. The recent downtimes of April and July 2000 have understandably frayed more nerves than those belonging to the folks who must maintain the equipment and the databases.

But things had generally been good so far and the Seti data servers have been stable on the most part. So you go about your merry, intermittently scanning the posts on the various Seti forums, some of which are discussing the myriad of Seti work unit queuing and caching programs available for your Seti program. But you figure, why bother?. They're probably too much trouble to set up anyway.

And then it happens. The error message that every Seti cruncher dreads: "Can't connect to server. Will retry in an hour". And so you figure it's just a glitch, so you wait an hour and check again. And you get another "Can't connect to server. Will retry in an hour". And so you wait yet another hour and... well you get my point. Your CPU has now wasted X number of hours trying to upload your result and get another work unit to process, and it can't. It's been sitting there idle. For shame! An idle CPU! What to do?

Start thinking like an ant you grasshopper you!

One of the newest and increasingly popular programs available to tide you over when the Seti servers and/or network connections are down (or when you go on vacation and can't monitor your machine) is Seti Driver. Written by Mike Ober and released under the GNU General Public License, Seti Driver is a work unit caching program written to run on Windows 95, 98, and NT. I have found that it also works well on Windows 2000. The latest version, as of the date of this updated review, is 1.6.2.0, released 11/23/00.

Many have asked over and over about which program they should use or which program is best in the event that there is an announced or even an unannounced outage. The answer that most people subsequently receive is that it all depends on exactly what their configuration is, including number and types of machines/OSs, and what type of caching they wish to put in place. If you only have a few Windows-based machines, say one to three, that might need some basic type of work unit caching, then Seti Driver is the program for you, mainly because it does require you to install it on every machine that you want to cache work units on. If you have more than a few machines to manage, then a caching server, such as SetiQueue (see Rat Bastard's SetiQueue Guide), is in order. Seti Queue creates a centralized work unit storage tank, in the form of a proxy server between your machines and the Seti data server, providing your Seti processing farm the work units they need, when they need them, whether the data server is reachable or not.

Although SetiQueue can easily be used to cache work units for a single machine, its strength lies in its ability to provide work units for tons of machines. However, where Seti Driver shines is for your few critical machines that must never go idle!

Features
Seti Driver is a fully automated, graphical Seti work unit caching configuration program that can be used with CLI ("Command Line Interface" or text-based) Seti program. It is also designed to work with some of the popular Seti add-on programs. These include Seti Spy, which will allow you to run your seti client hidden, so as not to add to the kajillion icons you might have on your task bar, and with this latest version, you can now utilize the features of SetiLog, whereby Seti Driver will create the appropriate type and named log files for monitoring and archiving.

Additionally, Seti Driver allows you to configure the number of processes you plan to run and it can even automatically determine whether you're running multiple processors and will allow you to set the affinity for them, eg., it can identify whether it's running on that dual or quad-Xeon 1Mb box you've finally built!

Another great feature of Seti Driver is the fact that you can configure how large you want your cache to be, "on the fly". For example, let's say that suddenly you've found that you've won those tickets you've been dying for, to see Smashing Pumpkins in concert. But then you find out that they're performing 500 miles away, but you say so what, you're going anyway and need to stay the night somewhere (plus an additional night to recover). Then you can simply bring up the Seti Driver configuration screen and set it to cache a few extra workunits - just in case your dialup connection dies while you're away. Once you return, you can bring up the configuration screen again and set the cache back down to what you had previously.

Setup
Installing Seti Driver is really a no-brainer. You simply download the zipped file into a directory and unzip it. Unzipped, you get 2 files, a "SETIDriver.exe" and a "license.txt" file, that contains a copy of the GNU General Public License.

The Seti Driver docs recommend that you put the executable where your Seti CLI executable resides for easiest operation. But if you want to run them in separate directories, you still have a chance to tell Seti Driver via a dialog box, just where those executables are, per the screen shown below:




If you don't specify a directory, hitting [OK] will do nothing. If you decide to escape out of it, you'll see the following:




However, if you have a Seti executable there or specify where it is, then you'll get the following configuration screen, with the defaults set based on your hardware configuration. For example, this is the display I get when starting up Seti Driver on my dual-Xeon II 400 1MB box running Windows 2000:


 

You simply need to fill in the blanks and select the options that you want. For example, you can select:

  • Maximum Processes

  • Desired Cache Size

  • Any proxy settings that are needed

  • Which programs to use to do monitoring of work unit progress

  • Your client priority and/or affinity (if it applies)

  • Whether you want to hide processing

  • Whether to auto-transmit or not upon workunit completion

  • Whether to use a 24 hour clock or not

There is a button you can push to indicate to Seti Driver that there is a new client, and it will finish processing your work unit with the old client before implementing the new client on the next work unit. Additionally, there is a "Transmit" button you can select to indicate to Seti Driver whether to transmit completed work units at that moment, while it is processing another work unit. You can also use the "Save Config" button to save your settings. Seti Driver will save your configuration in an editable, text-based file called "SETIDriver.cfg", that you can modify manually if you choose to run hidden or don't wish to use the graphical configuration screen.

The various parameters that can be used for manual execution of Seti Driver (or for modification in the config file) include:



-affinity                      		Automatically sets the affinity of the process

-auto                      		Automatically connects to SETI@Home data servers when a transmit is needed

-cpu N                     		Set the number of Processing Work units to N.
                              		Note this is different from the SETI CLI, which uses -cpu N to force processor affinity

-DisplayTransmit                	Displays the transmit processes's windows

-min                        		 Runs SETI Driver minimized. Can also be done through shortcut properties

-nohide                     		Runs the SETI cmdline Client on the Task Bar instead of hidden

-proxy hostname:port		Uses a proxy server to connect to SETI@Home data servers 

-runnormal			Runs the SETI Client at Normal priority - default is Low/Idle

-runhigh			Runs the SETI Client at High priority - default is Low/Idle

-socks_server hostname:port	Uses a socks server to connect to SETI@Home data servers - overrides -proxy

-socks_user 		Provides socks server username - case sensitive and requires socks_server

-socks_passwd password	Provides socks server password - case sensitive and requires -socks_server

-SETILog			Generate SETILog.csv files during transmit

-SETIspy or -spy		Integrate with SETI Spy

-verbose			Turn on SETI Driver progress tracking of the oldest processing WU.

-24hr			Use a 24 hour clock for estimated completion time

Operation
Once you start working on your configuration using the graphical interface, Seti Driver will automatically create a new work unit folder for you to start out with by default, and will immediately start filling that single work unit cache. As you increase your desired cache size, Seti Driver will immediately create new folders on the fly and will fill each of them with a new work unit. Once your folders are filled, Seti Driver will start processing from the highest numbered folder, and will work its way down. In general, it will work on the oldest work units first. Should you drop your cache size, Seti Driver will not delete the work unit in the your excess caches until it's finished processing them and the results have been sent. At that point, it will delete the excess folder(s).

If you choose to minimize Seti Driver rather than hide it, you will get the benefit of seeing a "status" icon that represents what your Seti Driver program is doing. These icons are listed below, with their meaning:

= SETI Driver is processing WUs and there are no WUs ready to transmit

= SETI Driver is processing WUs and there is at least one WU ready to transmit

= SETI Driver is transmitting

= SETI Driver has no WUs to process and needs your assistance to continue

Whenever you want to change something in the configuration, simply double-click the icon and make the change. Alternately, you can manually edit the config file and restart.

Conclusion
Seti Driver uses little or no CPU time during its operation and requires about 780K of memory, a point of information for those who are memory starved. Installation and configuration of the program takes less than 30 seconds and it plays well with other Seti-addons, like Seti Spy, SetiWatch, and SetiQueue. The author promises that it "never loses a work unit", the bane of some other caching programs.

With its ease of configuration and simplicity of operation, I would highly recommend this program for those ants who prefer to store up for the winter or dry Seti work unit season! Remember - don't listen to those grasshoppers. It only takes one or two long outages to finally get the message and finally get yourself that ultimate caching program!