[Extreme Computing Logo]


Profiling HPC++ programs using TAU

Configuring TAU

To profile HPC++ using Nexus/pthreads, please install TAU with the -pthread or -tulipthread=dir options.
For e.g., to use it with KCC on SGI

/home/sameer/tau-2.3% ./configure -c++=KCC -pthread 
/home/sameer/tau-2.3% make install

(See the files INSTALL and README included in the distribution)

Configuring HPC++

Modify the file Makefile.autoconf in HPC++ to use configure in the following manner:
        ./configure --with-runtime=nexus \
                    --with-threads=nexus \
                    --with-CXX=$(CXX) \
                    --with-runtime-includes=$(nexus_root)/include \
                    --with-runtime-library=$(nexus_root)/lib \
                    --with-tauprofile=/home/sameer/tau-2.3 \
                    --enable-profiling  \
                    --enable-64bit \
                    --enable-debug

Running RACY

The figure shows a profile of the quicksort algorithm. Notice the time spent doing useful work (pqsort) as opposed to the time spent waiting in a thread for the condition variable.