bWatch 1.0.2
============

bWatch is short for Beowulf Watch.  It is Tcl/Tk script designed to
monitor the performance of Topcat, a beowulf class supercomputer
(http://www.sci.usq.edu.au/staff/jacek/topcat).  Its main task is to
watch the load and memory usage on all of the nodes in a beowulf
cluster.

bWatch assumes that machine on which bWatch is running, can execute
remote shell (rsh) to all the machines listed in $listOfHosts
variable.  It also assumes that your wish interpreter is
/usr/bin/wish.  If you don't have Tcl/Tk installed then you will have
to obtain a copy from ftp://sunsite.unc.edu or any of its mirrors.

bWatch does not require root access, and can be run by any user on the
system as long (once again) they can execute rsh to all other
machines.

bWatch has been written specificly for the Linux platform and will not
run on any other Unix systems unless its /proc file system is exactly
the same as the one on Linux (bWatch runs well on SPARC Linux).
bWatch relies heavily on /proc file system so you must compile its
support into the kernels of all the machines listed in listOfHosts.

Where to Start ?
----------------

Unzip and untar the file somewhere in /usr/local or where ever you
store your apps. For example :

cd /usr/local/
tar -xvzf /path/to/the/file/bWatch-1.0.x.tar.gz
cd bWatch-1.0.x

Edit Makefile to check if the path to wish is correct (should be on
most Linux system).  Type

make bwatch

This will create a file bWatch.tcl which you can execute.

run bWatch by typing ./bWatch.tcl.  

If you wish to install bWatch in /usr/local/bin type :
make install

It will create .bWatchrc.tcl file in your home directory which you can
edit to suit your needs.  One of the variables you will have to edit
in ~/.bWatchrc.tcl is listOfHosts.  This is a list variable which
holds all the hostnames of the machines which will be monitored.  The
line in ~/.bWatchrc.tcl should look something like :

set listOfHosts {node1 node2 node3 node4 node5 node6 node7 node8}


COPYRIGHT
---------

Please read GNU General Public License (GPL). 


BUGS and comments for version 1.0.1
-----------------------------------

You must specify the hosts in listOfHosts with host names and NOT IP
addresses.  IP addresses or fully qualified domain names will NOT work,
and there is no easy way of changing this.
e.g.
topcat                 <- will work
139.86.43.23           <- will NOT work
topcat.eng.usq.edu.au  <- will NOT work

For a large number of nodes the main window will become
larger than the screen.  I'll have to implement a scrollbar.

(thank you for reporting bugs)

This README file is the only piece of documentation available.


FIXES and CHANGES 
-----------------

in 1.0.2

bWatch.tcl now runs in the bagground.  Bruce Allen has pointed out to me that -n option
in rsh takes input from /dev/null and therefore rsh does not block.  Thank you Bruce.

in 1.0.1
--------

The temporary file bWatchMemInfo was written in /tmp and not deleted after
exiting from bWatch.  This limited number of user who could run bWatch to 1.
All temporary files are now stored in user's home directory.

I no longer use the ~ (which is shell dependent) to specify user's home directory
I now use the $HOME enviroment variable.

in 1.0.0
--------

Memory information was obtained even when a host did not respond to a ping.
This caused a slight delay but it has been fixed.

When a machine does not respond to ping or rsh, or causes any other error, the labels
showing its attributes change to colour(errorFG) colour.  This was not reset for all
labels when the host became available again.

in 1.0.0-beta
-------------

There was a bug in displaying uptime information.  Any errors returned
by getUptime were not caught and were passed onto displayUpTime which
caused the software to crash.

All memory information is now obtained with a single rsh which speeds up
the software dramatically.

bWatch now uses ~/.bWatchrc.tcl to store all user configurable
information.  You no longer have to edit the bWatch.tcl script itself.

bWatch now displays correct number of processes if there are more than 100.

========================================================================
Jacek Radajewski
jacek@usq.edu.au
http://www.sci.usq.edu.au/staff/jacek







