root / BLAS / xGEMM / bench.sh @ 19
Historique | Voir | Annoter | Télécharger (3,56 ko)
1 | 5 | equemene | #!/bin/bash |
---|---|---|---|
2 | 1 | equemene | |
3 | 1 | equemene | DIR=$(pwd)/OUT |
4 | 1 | equemene | |
5 | 5 | equemene | BENCH=xGEMM |
6 | 1 | equemene | |
7 | 6 | equemene | NUMBER=2 |
8 | 1 | equemene | |
9 | 6 | equemene | STEP=1000 |
10 | 1 | equemene | |
11 | 6 | equemene | START=1000 |
12 | 1 | equemene | |
13 | 6 | equemene | ENDS=16000 |
14 | 6 | equemene | ENDD=12000 |
15 | 1 | equemene | |
16 | 1 | equemene | FORMAT=SP |
17 | 1 | equemene | |
18 | 1 | equemene | OUTSP_CBLAS=$DIR/${BENCH}_${FORMAT}_cblas.out |
19 | 1 | equemene | OUTSP_FBLAS=$DIR/${BENCH}_${FORMAT}_fblas.out |
20 | 1 | equemene | OUTSP_GSL=$DIR/${BENCH}_${FORMAT}_gsl.out |
21 | 1 | equemene | OUTSP_THUNKING=$DIR/${BENCH}_${FORMAT}_thunking.out |
22 | 1 | equemene | OUTSP_CUBLAS=$DIR/${BENCH}_${FORMAT}_cublas.out |
23 | 5 | equemene | OUTSP_GOTOBLAS=$DIR/${BENCH}_${FORMAT}_gotoblas.out |
24 | 5 | equemene | OUTSP_ACML=$DIR/${BENCH}_${FORMAT}_acml.out |
25 | 1 | equemene | |
26 | 1 | equemene | FORMAT=DP |
27 | 1 | equemene | |
28 | 1 | equemene | OUTDP_CBLAS=$DIR/${BENCH}_${FORMAT}_cblas.out |
29 | 1 | equemene | OUTDP_FBLAS=$DIR/${BENCH}_${FORMAT}_fblas.out |
30 | 1 | equemene | OUTDP_GSL=$DIR/${BENCH}_${FORMAT}_gsl.out |
31 | 1 | equemene | OUTDP_THUNKING=$DIR/${BENCH}_${FORMAT}_thunking.out |
32 | 1 | equemene | OUTDP_CUBLAS=$DIR/${BENCH}_${FORMAT}_cublas.out |
33 | 5 | equemene | OUTDP_GOTOBLAS=$DIR/${BENCH}_${FORMAT}_gotoblas.out |
34 | 5 | equemene | OUTDP_ACML=$DIR/${BENCH}_${FORMAT}_acml.out |
35 | 1 | equemene | |
36 | 1 | equemene | echo > $OUTSP_CBLAS |
37 | 1 | equemene | echo > $OUTSP_FBLAS |
38 | 1 | equemene | echo > $OUTSP_GSL |
39 | 1 | equemene | echo > $OUTSP_THUNKING |
40 | 1 | equemene | echo > $OUTSP_CUBLAS |
41 | 5 | equemene | echo > $OUTSP_ACML |
42 | 5 | equemene | echo > $OUTSP_GOTOBLAS |
43 | 1 | equemene | |
44 | 1 | equemene | echo > $OUTDP_CBLAS |
45 | 1 | equemene | echo > $OUTDP_FBLAS |
46 | 1 | equemene | echo > $OUTDP_GSL |
47 | 1 | equemene | echo > $OUTDP_THUNKING |
48 | 1 | equemene | echo > $OUTDP_CUBLAS |
49 | 5 | equemene | echo > $OUTDP_ACML |
50 | 5 | equemene | echo > $OUTDP_GOTOBLAS |
51 | 1 | equemene | |
52 | 5 | equemene | SIZE=$START |
53 | 5 | equemene | |
54 | 5 | equemene | while [ $SIZE -le $ENDS ] |
55 | 1 | equemene | do |
56 | 1 | equemene | |
57 | 1 | equemene | FORMAT=SP |
58 | 1 | equemene | |
59 | 5 | equemene | THUNKING=$(./${BENCH}_${FORMAT}_thunking $SIZE $NUMBER | grep GFlops | awk -F: '{ print $2 }' | awk '{ print $1 }') |
60 | 5 | equemene | |
61 | 5 | equemene | CUBLAS=$(./${BENCH}_${FORMAT}_cublas $SIZE $NUMBER | grep GFlops | awk -F: '{ print $2 }' | tr "\n" " " | awk '{ print $5"\t"$1"\t"$3 }') |
62 | 5 | equemene | |
63 | 1 | equemene | CBLAS=$(./${BENCH}_${FORMAT}_cblas $SIZE $NUMBER | grep GFlops | awk -F: '{ print $2 }' | awk '{ print $1 }') |
64 | 1 | equemene | |
65 | 5 | equemene | # FBLAS=$(./${BENCH}_${FORMAT}_fblas $SIZE $NUMBER | grep GFlops | awk -F: '{ print $2 }' | awk '{ print $1 }') |
66 | 1 | equemene | |
67 | 1 | equemene | # GSL=$(./${BENCH}_${FORMAT}_gsl $SIZE $NUMBER | grep GFlops | awk -F: '{ print $2 }' | awk '{ print $1 }') |
68 | 1 | equemene | |
69 | 5 | equemene | GOTOBLAS=$(./${BENCH}_${FORMAT}_gotoblas $SIZE $NUMBER | grep GFlops | awk -F: '{ print $2 }' | awk '{ print $1 }') |
70 | 1 | equemene | |
71 | 5 | equemene | ACML=$(./${BENCH}_${FORMAT}_acml $SIZE $NUMBER | grep GFlops | awk -F: '{ print $2 }' | awk '{ print $1 }') |
72 | 1 | equemene | |
73 | 5 | equemene | echo -e $SIZE"\t"$THUNKING >> $OUTSP_THUNKING |
74 | 5 | equemene | echo -e $SIZE"\t"$CUBLAS >> $OUTSP_CUBLAS |
75 | 1 | equemene | echo -e $SIZE"\t"$CBLAS >> $OUTSP_CBLAS |
76 | 1 | equemene | echo -e $SIZE"\t"$FBLAS >> $OUTSP_FBLAS |
77 | 1 | equemene | echo -e $SIZE"\t"$GSL >> $OUTSP_GSL |
78 | 5 | equemene | echo -e $SIZE"\t"$GOTOBLAS >> $OUTSP_GOTOBLAS |
79 | 5 | equemene | echo -e $SIZE"\t"$ACML >> $OUTSP_ACML |
80 | 1 | equemene | |
81 | 5 | equemene | SIZE=$(($SIZE+$STEP)) |
82 | 5 | equemene | |
83 | 5 | equemene | done |
84 | 5 | equemene | |
85 | 5 | equemene | SIZE=$START |
86 | 5 | equemene | |
87 | 5 | equemene | while [ $SIZE -le $ENDD ] |
88 | 5 | equemene | do |
89 | 5 | equemene | |
90 | 1 | equemene | FORMAT=DP |
91 | 1 | equemene | |
92 | 5 | equemene | THUNKING=$(./${BENCH}_${FORMAT}_thunking $SIZE $NUMBER | grep GFlops | awk -F: '{ print $2 }' | awk '{ print $1 }') |
93 | 5 | equemene | |
94 | 5 | equemene | CUBLAS=$(./${BENCH}_${FORMAT}_cublas $SIZE $NUMBER | grep GFlops | awk -F: '{ print $2 }' | tr "\n" " " | awk '{ print $5"\t"$1"\t"$3 }') |
95 | 5 | equemene | |
96 | 1 | equemene | CBLAS=$(./${BENCH}_${FORMAT}_cblas $SIZE $NUMBER | grep GFlops | awk -F: '{ print $2 }' | awk '{ print $1 }') |
97 | 1 | equemene | |
98 | 5 | equemene | # FBLAS=$(./${BENCH}_${FORMAT}_fblas $SIZE $NUMBER | grep GFlops | awk -F: '{ print $2 }' | awk '{ print $1 }') |
99 | 5 | equemene | |
100 | 1 | equemene | # GSL=$(./${BENCH}_${FORMAT}_gsl $SIZE $NUMBER | grep GFlops | awk -F: '{ print $2 }' | awk '{ print $1 }') |
101 | 1 | equemene | |
102 | 5 | equemene | GOTOBLAS=$(./${BENCH}_${FORMAT}_gotoblas $SIZE $NUMBER | grep GFlops | awk -F: '{ print $2 }' | awk '{ print $1 }') |
103 | 1 | equemene | |
104 | 5 | equemene | ACML=$(./${BENCH}_${FORMAT}_acml $SIZE $NUMBER | grep GFlops | awk -F: '{ print $2 }' | awk '{ print $1 }') |
105 | 1 | equemene | |
106 | 1 | equemene | echo -e $SIZE"\t"$CBLAS >> $OUTDP_CBLAS |
107 | 1 | equemene | echo -e $SIZE"\t"$FBLAS >> $OUTDP_FBLAS |
108 | 5 | equemene | echo -e $SIZE"\t"$GSL >> $OUTDP_GSL |
109 | 1 | equemene | echo -e $SIZE"\t"$THUNKING >> $OUTDP_THUNKING |
110 | 1 | equemene | echo -e $SIZE"\t"$CUBLAS >> $OUTDP_CUBLAS |
111 | 5 | equemene | echo -e $SIZE"\t"$GOTOBLAS >> $OUTDP_GOTOBLAS |
112 | 5 | equemene | echo -e $SIZE"\t"$ACML >> $OUTDP_ACML |
113 | 1 | equemene | |
114 | 1 | equemene | SIZE=$(($SIZE+$STEP)) |
115 | 1 | equemene | |
116 | 1 | equemene | done |