You should be able to run MPI programs on any of the CS department's Linux machines, including those in HAS 228 (Janusxx, where xx ranges from 00 through 21), those in HAS 340 (Xenaxx, where xx ranges from 00 through 21), and a new cluster of Linux-only machines (SnowWhite and Dwarfn, where n ranges from 1 through 7). Note that multiboot machines must be running Linux to be usable for this purpose.
export USERNAME BASH_ENV PATH
Just before this line, add a line:
PATH=$PATH:/usr/local/mpich/bin
setenv USERPATH .:$LOCAL/$HOSTTYPE/scripts:....
Append to the end of this line the characters :/usr/local/mpich/bin. (This is not the standard way of changing one's search path for csh, but it appears to be the only method that works with our local setup.)
After making either of these changes, log out and log back in again to make the change take effect.
Warning: To avoid a serious security hole, BE SURE that the permissions on this file do not allow others to modify it! (You can use the command chmod go= .rhosts to do this.)
An alternative is to read individual man pages with the command
man -M /usr/local/mpich/man whichpage
where whichpage is the name of the MPI command or function whose man page you want to read. (Examples are MPI for a general introduction, mpicc for the C compiler, and MPI_Init for the MPI initialization function.)
Typical usage: mpicc -o foo foo.c
Typical usage: mpiCC -o bar bar.cpp
Typical usage: mpirun -np 10 foobar (starts 10 processes, each running executable foobar)
You can specify which machines MPI can use by putting their names in a file and supplying its name via the -machinefile option. So for example you could put a list of allowed machines (the dwarfn machines, e.g.) in file MPIhosts and then say
mpirun -np 10 -machinefile MPIhosts foobar
(The file MPIhosts should look something like this.)