Software and Hardware Testbeds used in the course
Hardware
A Beowulf cluster named
Valkyrie is our main compute platform. Valkyrie operates using the
Rocks system developed at the
San Diego Supercomputer Center and runs the
Linux Operating system.
Valkyrie consists of 16 dual 1Ghz Pentium III CPUs. Each node
has 1GB of RAM, and a Myrinet switch provides low latency connectivity
between the nodes.
There is a
web page telling you more about Valkyrie's CPUs.
Here are some notes
to help you get started with Valkyrie.
Software
The following software tools will be available in the course
MPI
The Message Passing Interface (MPI) was developed by committee, packaged
as a subroutine library, and is standard fare these days.
Click
HERE for a list of documentation and tutorials for MPI.
PPF - Parallel Print Function
PPF
is the Ptools consortium parallel print facility.
The library has been installed in valkyrie:$(PUB)/lib/PPF,
with examples in $(PUB)/examples/PPF. See the README
file for further instructions.
SPRNG random number generator
SRNG is a 48 bit Linear Congruential Generator,
specially designed to run on parallel processors.
See the documentation.
Our "arch" files are set up for the appropriate compiler
and loader flags
used to invoke SPRNG, but if you are interested,
look at two example programs
written in C that has been taken from
the SPRNG distribution. These are installed on Valkyrie at
PUB/spring_ex/sprng-simple_mpi.c and
PUB/spring_ex/sprng-simple.c.
More generally, you may find many examples in
PUB/lib/SPRNG/EXAMPLES/.
Intel Math Kernel library (MKL)
The Intel Math Kernel Library (MKL) provides high performance
implementations of common numerical functions like
Matrix Multiplication and the FFT.
To link with MKL use the following on your load line
-L/opt/intel/mkl/8.0/lib/32 -lmkl -lguide -lpthread -lm
Documentation can be found at
http://developer.intel.com/software/products/mkl/docs/mklqref/index.htm
.
Matlab
Matlab is a handy problem solving environment and scientific programming
language. It supports rapid prototyping and nice plotting capability.
A large collection of Matlab scripts are available for a wide range of
application domains; see the
Mathworks web site at
http://www.mathworks.com for an archive.
Matlab is available on CSE Department machines, and you may
access is from your CSE graduate student account using the default PATH.
(If you don't have a CSE account, see me)
The Department has a site license for Matlab, so you may install the
software on your own machine. It is also available via
your graduate student account.
Python
Python is a scripting language that supports rapid prototyping. It is accessible on department APE lab Suns.
Threads (Pthreads)
Threads are used for shared memory programming. One popular
interface is Pthreads. Click Here
for more information.
Gnuplot
Gnuplot is a publicly available plotting program.
For documentation, see
http://www.duke.edu/~hpgavin/gnuplot.html
Maintained by
.
Last
modified:
Mon Jul 3 05:26:25 PDT 2006