|
|
CLIENT TIPS Hardware Freaks who refuse to be satisfied with 'good enough' |
|
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 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 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:
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 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:
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 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! |