#!/bin/bash if [ -z "${MYHOME}" ] then MYHOME=$HOME fi PYTHONPATH=/usr/bin #dir=`grep ^"dir = " config.py | cut -d"\"" -f2` name=`grep ^"exeFile = " config.py | cut -d"\"" -f2` grid=`grep ^"grid = " config.py | cut -d"\"" -f2` blk=`grep ^"blk =" config.py | cut -d"\"" -f2` bench=`grep ^"bench =" config.py | cut -d"\"" -f2` argcampo=`grep ^"duration =" config.py | cut -d"\"" -f2` campo=`grep ^"scale =" config.py | cut -d"\"" -f2` totalFiNumber=`grep ^"totalFiNumber = " config.py | cut -d"=" -f2` cpufreq=`grep ^"cpufreq = " config.py | cut -d"=" -f2` gpufreq=`grep ^"gpufreq = " config.py | cut -d"=" -f2` PATH=${MYHOME}/bin:$PATH #rm -f goldens #ln -s ${dir}/goldens goldens #rm -f ${name} #ln -s ${dir}/${name} ${name} echo >> results/res.out echo "==================================" >> results/res.out echo `date` >> results/res.out echo "Experiment: " $bench " grid: " $grid " blk: " $blk "cpufreq: " $cpufreq "gpufreq: " $gpufreq $campo":" $argcampo>> results/res.out echo "==================================" >> results/res.out echo >> results/res.out if [ ${cpufreq} -ne -1 ] then # echo "initial CPUfreq: " `cpufreq-info | grep "current CPU" | cut -d"s" -f2 | cut -d"(" -f1` > ./results/res.out sudo cpufreq-set -c 0 -d ${cpufreq} -u ${cpufreq} echo "CPUfreq set to: " `cpufreq-info | grep "current CPU" | cut -d"s" -f2 | cut -d"(" -f1` >> results/res.out echo "CPUfreq set to: " `cpufreq-info | grep "current CPU" | cut -d"s" -f2 | cut -d"(" -f1` > /dev/ttyS0 fi if [ ${gpufreq} -ne -1 ] then echo "Setting GPUFreq to: " ${gpufreq} >> results/res.out sudo ${MYHOME}/bin/gpufreq-set ${gpufreq} echo "GPUfreq set to: " `gpufreq-info` >> results/res.out fi if [ -f "lastFiNumber" ] then # por si hemos rearrancado el test.sh sin acabar el anterior fiNumber=$((`cat lastFiNumber` + 1)) else fiNumber=1 fi #if [ -f "lastFiNumber" ] #then # rm lastFiNumber #fi sudo killall iamalive_ini ${MYHOME}/bin/iamalive.sh # > /dev/ttyS0 & if [ $totalFiNumber -eq -1 ] then forever=1 else forever=0 fi tIni=`date +%H%M%S` # Tengo dudas ########### WARMING, WARMING ################ #./${name} -s ${size} -v ########### WARMING, WARMING ################ if [ ${gpufreq} -ne -1 ] then echo "After warming. Setting GPUFreq to: " ${gpufreq} >> results/res.out sudo ${MYHOME}/bin/gpufreq-set ${gpufreq} echo "GPUfreq set to: " `gpufreq-info` >> results/res.out fi while [ $forever -eq 1 ] || [ $fiNumber -le $totalFiNumber ] do tIni=`date +%H%M%S` if [ $gpufreq -eq -1 ] then sufix="" else g=`${MYHOME}/bin/gpufreq-info` sufix="_"${g%"000000"} fi fileName=${bench}"_"${grid}"_b"${blk}"_"${sufix} echo $fileName >> results/res.out echo "===========" >> results/res.out # fileName=${name}"_"${size}"_b"${blk} # gzip -f results/*.log # gzip -f results/*.tar if [ $# -eq 1 ] # parametro gdb then ./test_gdb.py $fileName $fiNumber $tIni #| tee ./results/${fileName}_${tIni}.out else ./test.py $fileName $fiNumber $tIni #| tee ./results/${fileName}_${tIni}.out fi echo "GPUfreq after test: " `gpufreq-info` >> results/res.out echo "===========" >> results/res.out status=$? if [ $status -eq 3 ] # tres timeouts seguidos then sudo reboot now sleep 30 sudo reboot now exit 1 elif [ $status -eq 2 ] # interrupcion por teclado del test then fiNumber=$totalFiNumber + 1 # provocar el fin del test forever=0 else fiNumber=$((`cat lastFiNumber` + 1)) fiNumber=$((`cat lastFiNumber` + 1)) fiNumber=$((`cat lastFiNumber` + 1)) fi done # end while if [ $cpufreq -ne -1 ] then # coloca la CPU a la maxima frecuencia sudo cpufreq-set -c 0 -d 2065500 -u 2065500 fi sudo killall iamalive ${MYHOME}/bin/iamalive_ini.sh # 120 10 & sudo killall -2 reset echo "Status after while loop: " $status if [ -f "lastFiNumber" ] then echo "Delete lastFiNumber. Reset index" > /dev/ttyS0 sudo rm lastFiNumber fi