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 63 64 65 66 67 68 69 70 71 72 73 74 75
|
#!/bin/bash
#
# Copyright (C) 2018, Northwestern University and Argonne National Laboratory
# See COPYRIGHT notice in top-level directory.
#
# Exit immediately if a command exits with a non-zero status.
set -e
VALIDATOR=../../src/utils/ncvalidator/ncvalidator
NCMPIDIFF=../../src/utils/ncmpidiff/ncmpidiff
# remove file system type prefix if there is any
OUTDIR=`echo "$TESTOUTDIR" | cut -d: -f2-`
MPIRUN=`echo ${TESTMPIRUN} | ${SED} -e "s/NP/$1/g"`
# echo "MPIRUN = ${MPIRUN}"
# echo "PARALLEL_PROGS=${PARALLEL_PROGS}"
# echo "PNETCDF_DEBUG = ${PNETCDF_DEBUG}"
if test ${PNETCDF_DEBUG} = 1 ; then
safe_modes="0 1"
else
safe_modes="0"
fi
# prevent user environment setting of PNETCDF_HINTS to interfere
unset PNETCDF_HINTS
for i in ${PARALLEL_PROGS} ; do
for j in ${safe_modes} ; do
for intra_aggr in 0 1 ; do
if test "$j" = 1 ; then # test only in safe mode
export PNETCDF_HINTS="romio_no_indep_rw=true"
else
export PNETCDF_HINTS=
fi
if test "$intra_aggr" = 1 ; then
export PNETCDF_HINTS="${PNETCDF_HINTS};nc_num_aggrs_per_node=2"
fi
export PNETCDF_SAFE_MODE=$j
# echo "set PNETCDF_SAFE_MODE ${PNETCDF_SAFE_MODE}"
${MPIRUN} ./$i ${TESTOUTDIR}/$i.nc
# echo "--- validating file ${TESTOUTDIR}/$i.nc"
${TESTSEQRUN} ${VALIDATOR} -q ${TESTOUTDIR}/$i.nc
# echo ""
if test "x${ENABLE_BURST_BUFFER}" = x1 ; then
# echo "---- test burst buffering feature"
saved_PNETCDF_HINTS=${PNETCDF_HINTS}
export PNETCDF_HINTS="${PNETCDF_HINTS};nc_burst_buf=enable;nc_burst_buf_dirname=${TESTOUTDIR};nc_burst_buf_overwrite=enable"
${MPIRUN} ./$i ${TESTOUTDIR}/$i.bb.nc
export PNETCDF_HINTS=${saved_PNETCDF_HINTS}
# echo "--- validating file ${TESTOUTDIR}/$i.bb.nc"
${TESTSEQRUN} ${VALIDATOR} -q ${TESTOUTDIR}/$i.bb.nc
if test "$1" != "./tst_flarge" ; then
# echo "--- ncmpidiff $i.nc $i.bb.nc ---"
${MPIRUN} ${NCMPIDIFF} -q ${TESTOUTDIR}/$i.nc ${TESTOUTDIR}/$i.bb.nc
fi
fi
if test "x${ENABLE_NETCDF4}" = x1 ; then
# echo "test netCDF-4 feature"
${MPIRUN} ./$i ${TESTOUTDIR}/$i.nc4 4
# Validator does not support nc4
fi
done
done
rm -f ${OUTDIR}/$i.nc
rm -f ${OUTDIR}/$i.bb.nc
done
|