@@ -10,15 +10,18 @@ set -e
1010VALIDATOR=../../src/utils/ncvalidator/ncvalidator
1111NCMPIDIFF=../../src/utils/ncmpidiff/ncmpidiff
1212
13- # remove file system type prefix if there is any
14- OUTDIR=` echo " $TESTOUTDIR " | cut -d: -f2-`
15-
1613MPIRUN=` echo ${TESTMPIRUN} | ${SED} -e " s/NP/$1 /g" `
1714# echo "MPIRUN = ${MPIRUN}"
1815# echo "check_PROGRAMS=${check_PROGRAMS}"
1916
17+ # remove file system type prefix if there is any
18+ OUTDIR=` echo " $TESTOUTDIR " | cut -d: -f2-`
19+
20+ # let NTHREADS=$1*6-1
21+ NTHREADS=` expr $1 \* 6 - 1`
22+
2023# echo "PNETCDF_DEBUG = ${PNETCDF_DEBUG}"
21- if test ${PNETCDF_DEBUG} = 1 ; then
24+ if test " x ${PNETCDF_DEBUG} " = x1 ; then
2225 safe_modes=" 0 1"
2326else
2427 safe_modes=" 0"
2730# prevent user environment setting of PNETCDF_HINTS to interfere
2831unset PNETCDF_HINTS
2932
33+ fixed_length=23
34+
3035for i in ${check_PROGRAMS} ; do
36+
3137 for j in ${safe_modes} ; do
32- for intra_aggr in 0 1 ; do
3338 if test " $j " = 1 ; then # test only in safe mode
34- export PNETCDF_HINTS=" romio_no_indep_rw=true"
39+ SAFE_HINTS=" romio_no_indep_rw=true"
40+ safe_hint=" SAFE"
3541 else
36- export PNETCDF_HINTS=
42+ SAFE_HINTS=" romio_no_indep_rw=false"
43+ safe_hint=" NOSAFE"
3744 fi
45+ OUT_PREFIX=" ${TESTOUTDIR} /$i "
46+
47+ for mpiio_mode in 0 1 ; do
48+ if test " $mpiio_mode " = 1 ; then
49+ USEMPIO_HINTS=" nc_pncio=disable"
50+ DRIVER_OUT_FILE=" ${OUT_PREFIX} .mpio"
51+ driver_hint=" MPIO"
52+ else
53+ USEMPIO_HINTS=" nc_pncio=enable"
54+ DRIVER_OUT_FILE=" ${OUT_PREFIX} .pncio"
55+ driver_hint=" PNCIO"
56+ fi
57+ for intra_aggr in 0 1 ; do
3858 if test " $intra_aggr " = 1 ; then
39- export PNETCDF_HINTS=" ${PNETCDF_HINTS} ;nc_num_aggrs_per_node=2"
59+ INA_HINTS=" nc_num_aggrs_per_node=2"
60+ INA_OUT_FILE=" ${DRIVER_OUT_FILE} .ina"
61+ ina_hint=" INA"
62+ else
63+ INA_HINTS=" nc_num_aggrs_per_node=0"
64+ INA_OUT_FILE=" ${DRIVER_OUT_FILE} "
65+ ina_hint=" NOINA"
66+ fi
67+
68+ OUT_FILE=$INA_OUT_FILE
69+ TEST_OPTS=" $safe_hint $driver_hint $ina_hint "
70+
71+ PNETCDF_HINTS=
72+ if test " x$SAFE_HINTS " ! = x ; then
73+ PNETCDF_HINTS=" $SAFE_HINTS "
4074 fi
75+ if test " x$USEMPIO_HINTS " ! = x ; then
76+ PNETCDF_HINTS=" $USEMPIO_HINTS ;$PNETCDF_HINTS "
77+ fi
78+ if test " x$INA_HINTS " ! = x ; then
79+ PNETCDF_HINTS=" $INA_HINTS ;$PNETCDF_HINTS "
80+ fi
81+
82+ export PNETCDF_HINTS=" $PNETCDF_HINTS "
4183 export PNETCDF_SAFE_MODE=$j
42- # echo "set PNETCDF_SAFE_MODE ${ PNETCDF_SAFE_MODE} "
84+ # echo "PNETCDF_SAFE_MODE=$ PNETCDF_SAFE_MODE PNETCDF_HINTS=$PNETCDF_HINTS "
4385
44- OPTS=
86+ CMD_OPTS= " -q -l 10 "
4587 if test " $i " = " aggregation" ; then
46- OPTS= " -b -c -i -j"
88+ CMD_OPTS+= " -b -c -i -j"
4789 fi
48- # echo "${MPIRUN} ./$i -q ${OPTS} -l 10 ${TESTOUTDIR}/$i.nc"
49- ${MPIRUN} ./$i -q ${OPTS} -l 10 ${TESTOUTDIR} /$i .nc
90+
91+ # echo "${LINENO}: ${MPIRUN} ./$i $CMD_OPTS ${OUT_FILE}.nc"
92+ ${MPIRUN} ./$i $CMD_OPTS ${OUT_FILE} .nc
93+
5094 if test $? = 0 ; then
51- echo " PASS: C parallel run on $1 processes --------------- $i "
95+ printf " PASS: C nprocs= $1 %- ${fixed_length} s -------- $i \n " " $TEST_OPTS "
5296 fi
5397
54- # echo "--- validating file ${TESTOUTDIR}/$i.nc"
55- ${TESTSEQRUN} ${VALIDATOR} -q ${TESTOUTDIR} /$i .nc
56- # echo ""
98+ # echo "${LINENO}:--- validating file ${OUT_FILE}.nc"
99+ ${TESTSEQRUN} ${VALIDATOR} -q ${OUT_FILE} .nc
57100
58101 if test " x${ENABLE_BURST_BUFFER} " = x1 ; then
59- # echo "test burst buffering feature"
102+ # echo "---- test burst buffering feature"
60103 saved_PNETCDF_HINTS=${PNETCDF_HINTS}
61104 export PNETCDF_HINTS=" ${PNETCDF_HINTS} ;nc_burst_buf=enable;nc_burst_buf_dirname=${TESTOUTDIR} ;nc_burst_buf_overwrite=enable"
62- ${MPIRUN} ./$i -q -l 10 ${TESTOUTDIR} /$i .bb.nc
105+ # echo "${LINENO}: ${MPIRUN} ./$i ${OUT_FILE}.bb.nc"
106+ ${MPIRUN} ./$i $CMD_OPTS ${OUT_FILE} .bb.nc
107+
63108 if test $? = 0 ; then
64- echo " PASS: C parallel run on $1 processes --------------- $i "
109+ printf " PASS: C nprocs= $1 %- ${fixed_length} s -------- $i \n " " $TEST_OPTS BB "
65110 fi
111+
66112 export PNETCDF_HINTS=${saved_PNETCDF_HINTS}
67113
68- # echo "--- validating file ${TESTOUTDIR}/$i .bb.nc"
69- ${TESTSEQRUN} ${VALIDATOR} -q ${TESTOUTDIR} / $i .bb.nc
114+ # echo "${LINENO}: --- validating file ${OUT_FILE} .bb.nc"
115+ ${TESTSEQRUN} ${VALIDATOR} -q ${OUT_FILE} .bb.nc
70116
71- # echo "--- ncmpidiff $i.nc $i.bb.nc ---"
72- ${MPIRUN} ${NCMPIDIFF} -q ${TESTOUTDIR} /$i .nc ${TESTOUTDIR} /$i .bb.nc
117+ DIFF_OPT=" -q"
118+ # echo "${LINENO}: --- ncmpidiff $DIFF_OPT $OUT_FILE.nc $OUT_FILE.bb.nc ---"
119+ ${MPIRUN} ${NCMPIDIFF} $DIFF_OPT $OUT_FILE .nc $OUT_FILE .bb.nc
73120 fi
74121
75- if test " x${ENABLE_NETCDF4} " = x1 ; then
76- # echo "test netCDF-4 feature"
77- ${MPIRUN} ./$i -q -l 10 ${TESTOUTDIR} /$i .nc4 4
78- # Validator does not support nc4
79- fi
80- done
81- done
82- rm -f ${OUTDIR} /$i .nc
83- rm -f ${OUTDIR} /$i .bb.nc
84- rm -f ${OUTDIR} /$i .nc4
85- done
122+ if test " x${ENABLE_NETCDF4} " = x1 ; then
123+ # echo "${LINENO}: test netCDF-4 feature"
124+ ${MPIRUN} ./$i $CMD_OPTS ${OUT_FILE} .nc4 4
125+ # Validator does not support nc4
126+ fi
127+ done # intra_aggr
128+ done # mpiio_mode
129+
130+ DIFF_OPT=" -q"
131+ # echo "${LINENO}: --- ncmpidiff $OUT_PREFIX.mpio.nc $OUT_PREFIX.mpio.ina.nc ---"
132+ $MPIRUN $NCMPIDIFF $DIFF_OPT $OUT_PREFIX .mpio.nc $OUT_PREFIX .mpio.ina.nc
133+ # echo "${LINENO}: --- ncmpidiff $OUT_PREFIX.mpio.nc $OUT_PREFIX.pncio.nc ---"
134+ $MPIRUN $NCMPIDIFF $DIFF_OPT $OUT_PREFIX .mpio.nc $OUT_PREFIX .pncio.nc
135+ # echo "${LINENO}: --- ncmpidiff $OUT_PREFIX.mpio.nc $OUT_PREFIX.pncio.ina.nc ---"
136+ $MPIRUN $NCMPIDIFF $DIFF_OPT $OUT_PREFIX .mpio.nc $OUT_PREFIX .pncio.ina.nc
137+
138+ done # safe_modes
139+ rm -f ${OUTDIR} /$i * nc*
140+ done # check_PROGRAMS
86141
0 commit comments