INSTALL 2.59 KB
Newer Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
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
61
62
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
./configure --with-mem-align=16 --with-log-path=$LOGPATH --prefix=$PREFIX CFLAGS="-O2"
make
make install

# configuring, compiling, and installing libz for compute nodes
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/

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.

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.

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

66
67
68
69
70
71
72
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.