Skip to content

Commit 3fa5718

Browse files
author
Maurus Item
committed
[TB] Updated regression tests for redundancy
1 parent 58d495e commit 3fa5718

File tree

1 file changed

+32
-29
lines changed

1 file changed

+32
-29
lines changed

scripts/non-regression_test.sh

Lines changed: 32 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ PARAMS=(
1818
5 32 3
1919
36 31 32
2020
12 31 16
21-
23 31 31
21+
# 23 31 31
2222
24 17 32
2323
24 20 32
2424
#23 17 33
@@ -28,40 +28,43 @@ PARAMS=(
2828
#17 13 17
2929
)
3030

31+
VSIM_LOGFILE=vsim.log
32+
rm -f $VSIM_LOGFILE
33+
34+
3135
run_regr() {
32-
local use_ecc=$1
3336
make golden M=$M N=$N K=$K > /dev/null
34-
make all 1>/dev/null 2>&1
35-
if [[ $use_ecc -eq 1 ]]; then
36-
timeout $BASE_TIMEOUT make run USE_ECC=1 1>/dev/null 2>&1
37-
else
38-
timeout $BASE_TIMEOUT make run 1>/dev/null 2>&1
39-
fi
37+
make all USE_REDUNDANCY=$SW_REDUNDANCY 1>/dev/null 2>&1
38+
timeout $BASE_TIMEOUT make run USE_ECC=$USE_ECC USE_REDUNDANCY=$HW_REDUNDANCY 1>$VSIM_LOGFILE 2>&1
39+
40+
# If you want detailed output, uncomment this line
41+
# tail -10 $VSIM_LOGFILE
42+
4043
if [[ $? -eq 124 ]]; then
41-
echo "ERROR : M=$M N=$N K=$K"
44+
STATUS="TIMEOUT"
4245
else
43-
echo "OK : M=$M N=$N K=$K"
46+
if grep -wq "Errors: 0," $VSIM_LOGFILE; then
47+
STATUS="OK "
48+
else
49+
STATUS="ERROR "
50+
fi
4451
fi
52+
echo "$STATUS: M=$M N=$N K=$K, ECC=$USE_ECC, HW_RED=$HW_REDUNDANCY, SW_RED=${SW_REDUNDANCY}"
4553
}
4654

47-
i=0
48-
while [[ $i -lt ${#PARAMS[@]} ]]; do
49-
M=${PARAMS[$i]}
50-
N=${PARAMS[$((i + 1))]}
51-
K=${PARAMS[$((i + 2))]}
52-
i=$((i + 3))
53-
54-
run_regr 0
55-
done
56-
57-
# Second loop: USE_ECC=1
58-
echo "Running with USE_ECC=1"
59-
i=0
60-
while [[ $i -lt ${#PARAMS[@]} ]]; do
61-
M=${PARAMS[$i]}
62-
N=${PARAMS[$((i + 1))]}
63-
K=${PARAMS[$((i + 2))]}
64-
i=$((i + 3))
55+
for SW_REDUNDANCY in 0 1; do
56+
for HW_REDUNDANCY in 0 1; do
57+
for USE_ECC in 0 1; do
58+
i=0
59+
while [[ $i -lt ${#PARAMS[@]} ]]; do
6560

66-
run_regr 1
61+
# For redundant operations we reduce the size of the matrix so run time is about the same
62+
M=$((${PARAMS[$i]} / (1 + $SW_REDUNDANCY)))
63+
N=${PARAMS[$((i + 1))]}
64+
K=${PARAMS[$((i + 2))]}
65+
i=$((i + 3))
66+
run_regr
67+
done
68+
done
69+
done
6770
done

0 commit comments

Comments
 (0)