INSTALL 3.02 KB
Newer Older
1 2 3
NOTE: Please visit the following web site for more thorough documentation:
http://www.mcs.anl.gov/research/projects/darshan/documentation

4 5 6 7 8 9 10 11
Compile and install example for BG/P:
-------------------------------------

# adjust these paths to suit
export PREFIX=/home/carns/demo/install
export LOGPATH=/home/carns/demo

# configuring, compiling, and installing darshan
12
./configure --with-mem-align=16 --with-log-path=$LOGPATH --prefix=$PREFIX --with-zlib-for-mpi=/soft/apps/zlib-1.2.3/ CFLAGS="-O2"
13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
make
make install

Explanation of configure arguments:
--------------------

--with-log-path (manditory): specifies the directory where all of the
application log files will be written.  

--prefix (manditory): where compiler scripts and darshan libraries will be
installed.

--with-mem-align (manditory): memory alignment for the architecture you are
building for; 16 is an interesting value on BG/P because that is the optimal
alignment for tree network communication.

29 30 31
--with-zlib-for-mpi (optional): path to a zlib build that is cross compiled
for use with mpi processes

32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60
Setting up the log directory
----------------------------

# create the directory that you specified in the --with-log-path argument to
# configure (if it does not already exist)
mkdir $LOGPATH
# run a darshan script (no arguments needed) that will create subdirectories
# for darshan to place output in.  The subdirectories are structured in
# <year>/<month>/<day> format.  The last subdirectories will have the sticky 
# bit set (1777 permissions, like /tmp) so that multiple users can write log
# files to the same directories.
darshan-mk-log-dirs.pl

Using darshan:
-------
Once darshan is installed, compile your applications using the
appropriate compiler from <prefix>/bin.  These compilers only modify the
link steps.  If you have a previously compiled application you can simply
relink it using the darshan compilers rather than recompiling from scratch.

Example:

install/bin/mpicc mpi-io-test.c -o mpi-io-test

The log files that darshan generates at run time will be in
a binary format with native gzip compression.  To get a human
readable version of the log file, use the "$PREFIX/bin/darshan-parser
$LOGPATH/<log_file_name>" utility from the bin directory.

61 62 63
You can also compare two different log files by using
$PREFIX/bin/darshan-diff <log1> <log2> to see what fields are different.

64 65 66 67 68 69
To generate some automatic graphs, go to the "utils" directory of the
source tree and run "./darshan-aggregate-stats.pl" on a text file that
contains the output from darshan-parser.  That perl script will generate
a summary.pdf file with some graphs in it.  You will need pdflatex and
a version of gnuplot with pdf support to use it.

70 71 72 73 74 75 76 77 78 79 80 81
compiling libz for the compute nodes
-------------------------------------

NOTE: This is not necessary (there is a libz build already available for
compute nodes). The instructions are included for archival purposes.

cd extern
tar -vxzf zlib-1.2.3.tar.gz
cd zlib-1.2.3
CC=/bgsys/drivers/ppcfloor/gnu-linux/bin/powerpc-bgp-linux-gcc CFLAGS="-O2" ./configure
make
cp libz.a $PREFIX/lib/
82