Files
astaroth/scripts/autotest.sh

53 lines
1.4 KiB
Bash
Executable File

#!/bin/bash
# Usage:
# cd astaroth
# source ./sourceme.sh
# autotest.sh
#
# If you need slurm or to pass something before ./ac_run, export the variable
# SRUN_COMMAND before calling this script.
#
# F.ex. on Taito SRUN_COMMAND="srun --gres=gpu:k80:4 --mem=24000 -t 00:14:59 -p gputest --cpus-per-task 1 -n 1"
# export SRUN_COMMAND
# autotest.sh
echo "SRUN_COMMAND: " ${SRUN_COMMAND}
results=()
# Parameters
# $1: String testname
# $2: String stencil_define_file
# $3: String stencil_assembly_file
# $4: String stencil_process_file
test_solver() {
TEST_DIR="tests/"$1
ac_mkbuilddir.sh -b ${TEST_DIR}
cd ${TEST_DIR}
compile_acc.sh --header $2 --assembly $3 --process $4
make -j
${SRUN_COMMAND} ./ac_run -t
results+=(${TEST_DIR}" fail? "$?)
}
NAME="hydro"
HEADER="hydro_solver/stencil_defines.h"
ASSEMBLY="mhd_solver/stencil_assembly.sas"
PROCESS="mhd_solver/stencil_process.sps"
test_solver ${NAME} ${HEADER} ${ASSEMBLY} ${PROCESS}
NAME="magnetic"
HEADER="magnetic_solver/stencil_defines.h"
ASSEMBLY="mhd_solver/stencil_assembly.sas"
PROCESS="mhd_solver/stencil_process.sps"
test_solver ${NAME} ${HEADER} ${ASSEMBLY} ${PROCESS}
NAME="mhd"
HEADER="mhd_solver/stencil_defines.h"
ASSEMBLY="mhd_solver/stencil_assembly.sas"
PROCESS="mhd_solver/stencil_process.sps"
test_solver ${NAME} ${HEADER} ${ASSEMBLY} ${PROCESS}
# Print results
for i in "${results[@]}"; do echo "$i" ; done