merge with kernels from MH's master thesis
[LbmBenchmarkKernelsPublic.git] / src / test.sh
1 #!/bin/bash -l
2 # --------------------------------------------------------------------------
3 #
4 # Copyright
5 #   Markus Wittmann, 2016-2017
6 #   RRZE, University of Erlangen-Nuremberg, Germany
7 #   markus.wittmann -at- fau.de or hpc -at- rrze.fau.de
8 #
9 #   Viktor Haag, 2016
10 #   LSS, University of Erlangen-Nuremberg, Germany
11 #
12 #  This file is part of the Lattice Boltzmann Benchmark Kernels (LbmBenchKernels).
13 #
14 #  LbmBenchKernels is free software: you can redistribute it and/or modify
15 #  it under the terms of the GNU General Public License as published by
16 #  the Free Software Foundation, either version 3 of the License, or
17 #  (at your option) any later version.
18 #
19 #  LbmBenchKernels is distributed in the hope that it will be useful,
20 #  but WITHOUT ANY WARRANTY; without even the implied warranty of
21 #  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
22 #  GNU General Public License for more details.
23 #
24 #  You should have received a copy of the GNU General Public License
25 #  along with LbmBenchKernels.  If not, see <http://www.gnu.org/licenses/>.
26 #
27 # --------------------------------------------------------------------------
28 set -u
29 set -e
30
31 XTag="-test"
32
33 # How many parallel processes during make.
34 NProc="10"
35
36 Build=release
37
38 if [ "$#" -lt 1 ]; then
39   echo "Compiles and runs several test cases."
40   echo ""
41   echo "Usage: test.sh <config>"
42   echo ""
43   echo "Select a configuration via config: linux-gcc or linux-intel."
44   exit 1
45 fi
46
47 if [ "$1" == "-h" -o "$1" == "-help" -o "$1" == "--help" ]; then
48   echo "Compiles and runs several test cases."
49   echo ""
50   echo "Usage: test.sh <config>"
51   echo ""
52   echo "Select a configuration via config: linux-gcc or linux-intel."
53   exit 1
54 fi
55
56 Config="$1"
57
58 # make clean-all
59 #
60 # make -j $NProc PRECISION=dp CONFIG=$Config TAG=$XTag-debug
61 # make -j $NProc PRECISION=dp CONFIG=$Config BUILD=$Build TAG=$XTag-v VERIFICATION=on
62 # make -j $NProc PRECISION=dp CONFIG=$Config BUILD=$Build TAG=$XTag-b BENCHMARK=on
63 #
64 # BinaryVDp="../bin/lbmbenchk-$Config-$Build-dp$XTag-v"
65 # BinaryBDp="../bin/lbmbenchk-$Config-$Build-dp$XTag-b"
66
67
68 make -j $NProc PRECISION=sp CONFIG=$Config TAG=$XTag-debug
69 make -j $NProc PRECISION=sp CONFIG=$Config BUILD=$Build TAG=$XTag-v VERIFICATION=on
70 make -j $NProc PRECISION=sp CONFIG=$Config BUILD=$Build TAG=$XTag-b BENCHMARK=on
71
72 BinaryVSp="../bin/lbmbenchk-$Config-$Build-sp$XTag-v"
73 BinaryBSp="../bin/lbmbenchk-$Config-$Build-sp$XTag-b"
74
75
76 echo "#"
77 echo "# [test.sh] ./test-verification.sh \"$BinaryVDp\""
78 echo "#"
79
80 ./test-verification.sh "$BinaryVDp"
81
82 ExitCodeDp="$?"
83
84 echo "#"
85 echo "# [test.sh] ./test-verification.sh \"$BinaryVSp\""
86 echo "#"
87
88 ./test-verification.sh "$BinaryVSp"
89
90 ExitCodeSp="$?"
91
92 ResultDp="errors occurred"
93 ResultSp="errors occurred"
94
95 if [ "$ExitCodeDp" == "0" ]; then ResultDp="OK"; fi
96 if [ "$ExitCodeSp" == "0" ]; then ResultSp="OK"; fi
97
98 echo "#"
99 echo "# [test.sh] test   double precision: $ResultDp   single precision: $ResultSp"
100 echo "#"
101
102 ExitCode="0"
103
104 if [ "$ExitCodeDp" != 0 -o "$ExitCodeSp" != 0 ]; then
105   ExitCode="1"
106 fi
107
108 exit "$ExitCode"
109
This page took 0.064787 seconds and 4 git commands to generate.