rendered paste body#!/bin/bash
MINNODE=1
MAXNODE=37
OMP_NUM_THREADS=8
for i in $(seq $MINNODE $(($MAXNODE-1)))
do
for j in $(seq $(($i+1)) $MAXNODE)
do
STARTNODES=$(seq -s',' $(($i*4)) $(($i*4+3)))
ENDNODES=$(seq -s',' $(($j*4)) $(($j*4+3)))
echo -e -n "Testing node link $i-$j:\t"
echo -e "cpus $STARTNODES,$ENDNODES\nmems $i,$j\ncpu_exclusive 1\nmem_exclusive 1\nmemory_migrate 0\nmemory_spread_page 1\nmemory_spread_slab 1\nnotify_on_release 0" | cpuset -c /${i}_to_$j > /dev/null
echo -e "#!/bin/bash\nLD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/intel/mkl/current/lib/64/\nLIBRARY_PATH=$LIBRARY_PATH:/opt/intel/mkl/current/lib/64/\nOMP_NUM_THREADS=8 numactl --interleave=$i,$j ./mult_bf.exe < mult_bf.in" > myjob
chmod a+x myjob
JOBOUTPUT=$(cpuset -i /${i}_to_$j -I ./myjob)
FLOPS=$(echo -e $JOBOUTPUT | sed 's/.* //g' | sed 's/\..*$//')
if [ $FLOPS -gt 35000 ]
then
echo "GOOD"
else
echo "BAD"
fi
done
done