Home
Name Modified Size InfoDownloads / Week
Makefile 2013-10-08 493 Bytes
README 2013-10-08 1.9 kB
PCramer100.xml 2013-10-08 892 Bytes
Matrix100.1254.csv 2013-10-08 25.0 kB
Matrix100_ans.1254.csv 2013-10-08 1.3 kB
b_Matrix100.1254.csv 2013-10-08 252 Bytes
CramerAlgorithm.h 2013-10-07 376 Bytes
libCramerAlgorithm.a 2013-10-07 19.8 kB
CramerAlgorithm.c 2013-10-07 70.3 kB
PCramer.h 2013-10-07 3.8 kB
PCramer.c 2013-10-07 83.7 kB
LoadMatrix.h 2013-10-07 361 Bytes
LoadMatrix.c 2013-10-07 18.3 kB
Totals: 13 Items   226.6 kB 0
 ============================================================================
 PCramer - README

This code provides a linear solver based on a parallel application of Cramer's rule. The programming was done in 'C' leveraging the MPI-CH2 libraries for message passing between nodes. This implementation is for dense linear systems and all calculations are done with doubles.
 ============================================================================

This program has dependencies on the following:
MPICH2 (Message Passing Interface - Chameleon) http://www.mpich.org/
CramerAlgorithm - http://sourceforge.net/projects/CramerAlogirthm
libxml - The XML C parser and toolkit of Gnome - http://www.xmlsoft.org/
fpmpi - Give statistical information on the run such as computational time - http://www.mcs.anl.gov/research/projects/fpmpi/WWW/

The program reads an XML file that provides information on the Matrix and solution vector (b).  This file is passed as the -f command line argument.  An example xml file (PCramer100.xml) is provided as a template.The program will then solve for the solution.  In addition the xml file can identify a know solution for comparision as well as settings for debugging and output files.   


Instructions to run PCramer once compiled

1. Load the MPI module on the console
	module load mpich2-i386

2. Start the MPI daemon with the number of processors you'd like to use
	mpdboot -n 1

3. Check to see if the MPI program is running correctly
	mpdtrace

4. Move into the directory where PCramer will be run
	cd /PCramer

5. Run the PCramer program; 
	tell MPI program to run: mpirun
	tell how many processors you wish to use: -n #
	tell where the program to run under MPI: /PCramer/PCramer
	add flag for file PCramer should use as input: -f PCramer100.xml
	example: mpirun -n 2 /PCramer/PCramer -f PCramer100.xml

6. Unload the MPI program
	module unload mpich2-i386


Source: README, updated 2013-10-08