1
+ #! /bin/bash
2
+ EXP_NAME=" FIR_filters"
3
+
4
+ SOURCE=" ${BASH_SOURCE[0]} "
5
+ while [ -h " $SOURCE " ]; do
6
+ DIR=" $( cd -P " $( dirname " $SOURCE " ) " && pwd ) "
7
+ SOURCE=" $( readlink " $SOURCE " ) "
8
+ [[ $SOURCE != /* ]] && SOURCE=" $DIR /$SOURCE "
9
+ done
10
+ DIR=" $( cd -P " $( dirname " $SOURCE " ) " && pwd ) "
11
+ source " ../config.bash" # cd's into EXP_DIR
12
+
13
+ # ## end prologe ###
14
+
15
+ ARCHES=" $ALL_ARCHES "
16
+
17
+ if [ -z " $1 " ] || [ " $1 " == " dup_sources" ]; then
18
+ pushd .
19
+
20
+ # make verilog file
21
+ cd $EXP_DIR /verilog || exit 1
22
+
23
+ mkdir -p " fir-gen"
24
+ rm fir-gen/fir_* .v
25
+
26
+ make generate_fir || exit 1
27
+ for p in pipe nopipe; do
28
+ for i in {10..52}; do
29
+ ./generate_fir " $p " " $i " > " fir-gen/fir_${p} _${i} .v"
30
+ done
31
+ done
32
+
33
+ ls fir-gen/fir_* .v
34
+
35
+ # # duplicate architecture files
36
+ # cd $ARCH_DIR
37
+ # ./make_resized_arches.bash 40 40
38
+ # echo "architecture files:"
39
+ # ls "40x40"
40
+
41
+ popd
42
+ fi
43
+
44
+ source " $TASK_AND_PARSE "
45
+
46
+ if [ -z " $1 " ] || [ " $1 " == " extract" ]; then
47
+ pushd .
48
+ cd " $ABS_TASK_PATH "
49
+
50
+ if [ -z " $2 " ]; then
51
+ dothisrun=" $maxrun "
52
+ else
53
+ dothisrun=" $2 "
54
+ fi
55
+
56
+ echo " reparsing results from run #$dothisrun ..."
57
+
58
+ cd " run$dothisrun "
59
+
60
+ HEADER_SPACING=" \t\t\t\t\t"
61
+ EXTRA_SPACING=" " # "\t\t\t\t\t\t"
62
+ COL_DEFS=" num_coeff\tcrit_path_delay\tnum_clb\tarea_per_clb\tgrid_tile_area\t"
63
+
64
+ for arch in $ARCHES ; do
65
+ for piped in pipe nopipe; do
66
+ if grep " $arch " parse_results.txt | grep " fir_${piped} " > /dev/null; then
67
+ archresult_file=" $EXP_DIR /$piped .$arch .result"
68
+ echo " reparsing $piped $arch "
69
+ ARCH_HEADER=" $piped $arch$HEADER_SPACING$EXTRA_SPACING \n"
70
+ ARCH_HEADER+=" $COL_DEFS$EXTRA_SPACING \n"
71
+ grid_tile_area=$( grep " grid_logic_tile_area" " $ARCH_DIR /$arch " | grep -oEi " [0-9.]+" )
72
+ # echo "run #$dothisrun" > "$archresult_file.tmp"
73
+ printf " $ARCH_HEADER " >> " $archresult_file .tmp"
74
+ grep " $arch " parse_results.txt | grep " fir_${piped} " | awk ' {OFS="\t";print $2,$5,$23,$24,' " \" $grid_tile_area \" " ' ,""}' >> " $archresult_file .tmp"
75
+ sed -r " s/fir_${piped} _(.*)\.v/\\ 1/g" " $archresult_file .tmp" > " $archresult_file "
76
+ # cat "$archresult_file.tmp" > "$archresult_file"
77
+ # rm "$archresult_file.tmp"
78
+
79
+ result_files=" $result_files $archresult_file " # add to resultfile set
80
+ fi
81
+ done
82
+ done
83
+
84
+ echo " recombining..."
85
+
86
+ echo " run #$dothisrun " > " $FINAL_RESULTFILE "
87
+
88
+ if [ -z " $result_files " ]; then
89
+ echo " no results?"
90
+ else
91
+ paste $result_files >> " $FINAL_RESULTFILE "
92
+ rm " ${EXP_DIR} " /* k6_N8_* .xml.result*
93
+ fi
94
+
95
+ echo " done reparsing"
96
+
97
+ popd
98
+ fi
99
+
100
+ # # run log ##
101
+ # run# note
102
+ #
0 commit comments