#!/bin/bash

TOP=`pwd`

source /usr/local/packages/modules/init/bash
module unload mpi
#module load mpi/openmpi
module load mpi/mpich2

REPO="http://www.nic.uoregon.edu/~amorris/regression"

get_flash()
{
    cd $TOP
    rm -rf FLASH3
    rm FLASH3.tar.gz
    wget $REPO/apps/flash/FLASH3.tar.gz
    tar -xzf FLASH3.tar.gz
    cd FLASH3/sites
    mkdir sigma.nic.uoregon.edu
    cd sigma.nic.uoregon.edu
    wget $REPO/apps/flash/Makefile.h
    cd $TOP
}

get_tau()
{
    cd $TOP
    mkdir tar
    rm -rf pdtoolkit tau2 tar/tau2.tar.gz tar/pdtoolkit.tar.gz
    cd $TOP/tar
    wget $REPO/checkouts/tau2.tar.gz
    wget $REPO/checkouts/pdtoolkit.tar.gz
    cd $TOP
    tar -xzf tar/tau2.tar.gz
    tar -xzf tar/pdtoolkit.tar.gz

    cd $TOP/pdtoolkit
    ./configure
    make install -j4

}

get_hdf5()
{
    cd $TOP
    mkdir tar
    cd $TOP/tar
    wget $REPO/apps/flash/hdf5-1.6.5.tar.gz
    tar xzf hdf5-1.6.5.tar.gz
    cd hdf5-1.6.5
    ./configure --prefix=$TOP/hdf5-1.6.5 --disable-shared --enable-static
    make && make install
}


build_notau()
{
    cd $TOP/FLASH3
    rm -rf notau
    ./setup Sedov -2d -auto -site=sigma.nic.uoregon.edu -objdir=notau
    cd notau
    make -j8
    make
}

run_notau()
{
    mpdallexit
    mpd -d
    cd $TOP/FLASH3/notau
    mpirun -np 4 ./flash3
    mpdallexit
}

build_tau()
{
    cd $TOP/tau2
    ./configure -cc=icc -c++=icpc -fortran=intel $TAU_MPI -pdt=$PWD/../pdtoolkit -useropt=-g
    make clean install

    cd $TOP/FLASH3
    rm -rf tau
    ./setup Sedov -2d -auto -site=sigma.nic.uoregon.edu -objdir=tau -tau=$TOP/tau2/include/Makefile
    cd tau
    make
}

run_tau()
{
    mpdallexit
    mpd -d
    cd $TOP/FLASH3/tau
    mpirun -np 4 ./flash3
    mpdallexit
    DATE=`date +%Y-%m-%d`
    $TOP/tau2/x86_64/bin/perfdmf_loadtrial -c regression -a "Flash" -x "Flash Regression" -n $DATE
    $TOP/tau2/x86_64/bin/paraprof --pack $DATE.ppk
    EXP=`date "+%B %Y"`
    $TOP/tau2/x86_64/bin/tau_portal.py up -u amorris -p db -w "Flash Regression" -e "$EXP" $DATE.ppk
    $TOP/tau2/x86_64/bin/paraprof --pack ~/datarepo/flash/$DATE.ppk

}

