This site will look much better in a browser that supports web standards, but it is accessible to any browser or Internet device.
April 12th 2006 Antti Vanne at uku fi
ganglia_hack.py - Quick hack to use ganglia in a cluster with a non-multicasting switch. Doesn't scale too well, usable on a 24 cluster though. This is a rewrite of the same perl script in python.
April 4th 2006 Antti Vanne at uku fi
mpi_busyloop.cpp - This program runs a "busy loop" on the cluster nodes and reports the nodes which run at least 10% slower than the median node. I'm having trouble with some PC hardware, which every now and then starts to generate huge loads of interrupts and hence chokes the performance of a node.
March 26th 2004 Antti Vanne at uku fi
gangliahack.pl - Quick hack to use ganglia in a cluster with a non-multicasting switch. Doesn't scale too well, usable on a 24 cluster though. Idea: listen to port $serverPort (8666 as default) for gmetad's request for XML data and when connected, gather XML from individual nodes from port $queryPort and serve it to gmetad. Bugfix on mar 26 2004: see code header
May 21st 2003 Antti Vanne at uku fi
readColMajMat.m - Reads column-major binary matrix into matlab
writeColMajMat.m - Writes column-major binary matrix
readPetscBinMat.m - Reads Petsc's binary matrix to Matlab
writePetscBin.m - Writes Petsc's binary matrix/vector from Matlab
splitLU.m - Splits full matrix into upper and lower triangular matrices and saves them in Petsc's binary format
splitLU.c - Splits col major full matrix into upper and lower triangular matrices and saves them in Petsc's binary format.
Written in C, faster and more memory efficient than the matlab version
ioPlapackBlocked.c - Functions to read/write col major matrix from/to disk and distribute/gather it to PLAPACK's global
object block-by-block ie. saving memory.
June 18th 2002 Antti Vanne at uku fi
Package bioheat-18062002.tar.gz includes Fortran 90 source for a FEM iteration
i = 1:N
T(:,i+1) = AT(:,i) + \Delta t A(P+C(Bu(:,i)).^2 + DT)
which is calculated in parallel using parallel versions of BLAS routines
included in Scalapack distribution. Fortran program is called from a
matlab m-file, which passes the matrices using named pipe. Also included
are the two Fortran 90 modules, dataPipe.mod and parallelRoutines.mod,
which provide Fortran routines for passing data between Matlab and
Fortran binary (as it's not possible to use mex with parallel binaries)
and routines for distributing matrices block-cyclically (front ends for
Scalapack routines). Usage: compile bioheat solver
(make bioheat),
copy it to nodes (check make install and copyToNodes.sh script), create
a named pipe for data passing (mkfifo /tmp/dataFifo) and run
bioheat.m from matlab prompt (T=bioheat;).
June 12th 2002 Antti Vanne at uku fi
When using mpich implementation of the MPI standard, one has to start programs using mpirun command or by giving appropriate command-line parameters to the executable. This prevents the use of mex files and data passing using the routines found from matlab libraries. passMatrix.tar.gz package includes example programs for passing data (full matrices containing real8 or integer4 elements) between Matlab process and a separate process with the help of a named pipe. Installation: unpack the archive, compile the Fortran 90 source, create a named pipe
make passMatrix
mkfifo dataFifo
and run the passMatrix.m file
from matlab prompt. A simple matrix is passed to the Fortran 90
executable, it is multiplied by 2 and passed back.
June 6th 2002 Antti Vanne at uku fi
spackDistr.f90 defines a subroutine ddistr(ictxt, M, N, blockSize, A0, A, descA) which distributes a full double precision matrix from root node (row == 0 && col == 0) in process context ictxt to all the nodes in the same context. It is merely a "front end" for ScalaPack routine PDGEMR2D.