Commit 77f66a90 authored by Francois Tessier's avatar Francois Tessier

Move from non-blocking to blocking I/O on Cooley (iRead failures)

parent 18debacb
......@@ -166,7 +166,7 @@ int Memory::memWrite ( void* srcBuffer, int64_t srcSize, int64_t offset, int des
break;
case NLS:
case PFS:
err = MPI_File_iwrite_at ( this->fileHandle_, offset, srcBuffer, srcSize, MPI_BYTE, &this->request_ );
err = MPI_File_write_at ( this->fileHandle_, offset, srcBuffer, srcSize, MPI_BYTE, &status );
break;
default:
printMsg ( ERROR, "Error while writing data (mem = %s)\n", this->memName () );
......@@ -189,7 +189,7 @@ int Memory::memRead ( void* srcBuffer, int64_t srcSize, int64_t offset, int des
break;
case NLS:
case PFS:
err = MPI_File_iread_at ( this->fileHandle_, offset, srcBuffer, srcSize, MPI_BYTE, &this->request_ );
err = MPI_File_read_at ( this->fileHandle_, offset, srcBuffer, srcSize, MPI_BYTE, &status );
break;
default:
printMsg ( ERROR, "Error while reading data (mem = %s)\n", this->memName () );
......
#!/bin/bash
NODES=32
NODES=8
PPN=12
NPROCS=$((NODES*PPN))
TARGET="/projects/visualization/ftessier/debug"
TARGET="/projects/Performance/ftessier/TAPICOA"
cd $HOME/TAPIOCA/examples/1D-Array
cd $HOME/install/$ARCHI/bin/
export TAPIOCA_STRATEGY=TOPOLOGY_AWARE
export TAPIOCA_NBAGGR=2
export TAPIOCA_NBBUFFERS=2
export TAPIOCA_BUFFERSIZE=8388608
export TAPIOCA_AGGRTIER=DDR
export TAPIOCA_DEVNULL=false
export TAPIOCA_COMMSPLIT=true
export TAPIOCA_STRATEGY=TOPOLOGY_AWARE
export TAPIOCA_NBAGGR=8
export TAPIOCA_BUFFERSIZE=16777216
export TAPIOCA_PIPELINING=true
export TAPIOCA_REELECTAGGR=false
export TAPIOCA_REELECTAGGR=true
function updateSettings()
{
printenv | egrep "TAPIOCA_"
SETTINGS="--env TAPIOCA_STRATEGY=$TAPIOCA_STRATEGY"
# TAPIOCA
SETTINGS="TAPIOCA_DEVNULL=$TAPIOCA_DEVNULL"
SETTINGS="$SETTINGS TAPIOCA_COMMSPLIT=$TAPIOCA_COMMSPLIT"
SETTINGS="$SETTINGS TAPIOCA_STRATEGY=$TAPIOCA_STRATEGY"
SETTINGS="$SETTINGS TAPIOCA_NBAGGR=$TAPIOCA_NBAGGR"
SETTINGS="$SETTINGS TAPIOCA_BUFFERSIZE=$TAPIOCA_BUFFERSIZE"
SETTINGS="$SETTINGS TAPIOCA_PIPELINING=$TAPIOCA_PIPELINING"
SETTINGS="$SETTINGS TAPIOCA_REELECTAGGR=$TAPIOCA_REELECTAGGR"
# OPTIMIZATIONS
SETTINGS="$SETTINGS PAMID_VERBOSE=1"
SETTINGS="$SETTINGS PAMID_COLLECTIVES_MEMORY_OPTIMIZED=1"
SETTINGS="$SETTINGS PAMID_COLLECTIVES=1"
SETTINGS="$SETTINGS GPFSMPIO_BALANCECONTIG=1"
SETTINGS="$SETTINGS GPFSMPIO_P2PCONTIG=1"
SETTINGS="$SETTINGS --env TAPIOCA_NBAGGR=$TAPIOCA_NBAGGR"
SETTINGS="$SETTINGS --env TAPIOCA_NBBUFFERS=$TAPIOCA_NBBUFFERS"
SETTINGS="$SETTINGS --env TAPIOCA_BUFFERSIZE=$TAPIOCA_BUFFERSIZE"
SETTINGS="$SETTINGS --env TAPIOCA_AGGRTIER=$TAPIOCA_AGGRTIER"
echo $SETTINGS
SETTINGS="$SETTINGS --env TAPIOCA_DEVNULL=$TAPIOCA_DEVNULL"
SETTINGS="$SETTINGS --env TAPIOCA_COMMSPLIT=$TAPIOCA_COMMSPLIT"
SETTINGS="$SETTINGS --env TAPIOCA_PIPELINING=$TAPIOCA_PIPELINING"
SETTINGS="$SETTINGS --env TAPIOCA_REELECTAGGR=$TAPIOCA_REELECTAGGR"
# OPTIMIZATIONS
SETTINGS="$SETTINGS --env PAMID_VERBOSE=1"
SETTINGS="$SETTINGS --env PAMID_COLLECTIVES_MEMORY_OPTIMIZED=1"
SETTINGS="$SETTINGS --env PAMID_COLLECTIVES=1"
SETTINGS="$SETTINGS --env GPFSMPIO_BALANCECONTIG=1"
SETTINGS="$SETTINGS --env GPFSMPIO_P2PCONTIG=1"
}
function outputFile ()
function generateRand ()
{
OUTPUT="$HOME/TAPIOCA/examples/1D-Array/$1"
OUTPUT="${OUTPUT}_${NODES}_${PPN}_${PARTICLES}_${TAPIOCA_NBAGGR}_${TAPIOCA_BUFFERSIZE}_BGQ"
echo -ne > randtmp
for R in $(eval echo "{1..$NODES}")
do
echo $RANDOM >> randtmp
done
}
PARTICLES=250000
for RUN in 1
do
updateSettings
updateSettings
generateRand
mpirun -f $COBALT_NODEFILE -n $NPROCS mpiio-W $PARTICLES
sleep 5
mpirun -f $COBALT_NODEFILE -n $NPROCS mpiio-R $PARTICLES
sleep 5
rm $TARGET/*
mpirun -f $COBALT_NODEFILE -n $NPROCS tapioca-W $PARTICLES
sleep 5
mpirun -f $COBALT_NODEFILE -n $NPROCS tapioca-R $PARTICLES
rm $TARGET/*
for BIN in 1D-Array-Tapioca-W 1D-Array-Tapioca-R 1D-Array-MPIIO-W 1D-Array-MPIIO-R
do
mpirun $SETTINGS -f $COBALT_NODEFILE -n $NPROCS $BIN -e $PARTICLES -o $TARGET -s SSF
echo
echo "---------------------------------"
echo
sleep 5
done
done
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment