Merge pull request #3709 from nursik/develop
[platform/upstream/openblas.git] / test / Makefile
1 TOPDIR  = ..
2 include ../Makefile.system
3 ifeq ($(F_COMPILER),GFORTRAN)
4         override FFLAGS += -fno-tree-vectorize
5 endif
6
7 ifeq ($(NOFORTRAN),1)
8 all ::
9 else
10 all :: level1 level2 level3
11 endif
12
13 ifeq ($(BUILD_SINGLE),1)
14 S1=sblat1
15 endif
16 ifeq ($(BUILD_DOUBLE),1)
17 D1=dblat1
18 endif
19 ifeq ($(BUILD_COMPLEX),1)
20 C1=cblat1
21 endif
22 ifeq ($(BUILD_COMPLEX16),1)
23 Z1=zblat1
24 endif
25
26 level1: $(S1) $(D1) $(C1) $(Z1)
27
28 ifneq ($(CROSS), 1)
29 ifeq ($(BUILD_SINGLE),1)
30         OPENBLAS_NUM_THREADS=1 OMP_NUM_THREADS=1 ./sblat1
31 endif
32 ifeq ($(BUILD_DOUBLE),1)
33         OPENBLAS_NUM_THREADS=1 OMP_NUM_THREADS=1 ./dblat1
34 endif
35 ifeq ($(BUILD_COMPLEX),1)
36         OPENBLAS_NUM_THREADS=1 OMP_NUM_THREADS=1 ./cblat1
37 endif
38 ifeq ($(BUILD_COMPLEX16),1)
39         OPENBLAS_NUM_THREADS=1 OMP_NUM_THREADS=1 ./zblat1
40 endif
41 ifdef SMP
42 ifeq ($(USE_OPENMP), 1)
43 ifeq ($(BUILD_SINGLE),1)
44         OMP_NUM_THREADS=2 ./sblat1
45 endif
46 ifeq ($(BUILD_DOUBLE),1)
47         OMP_NUM_THREADS=2 ./dblat1
48 endif
49 ifeq ($(BUILD_COMPLEX),1)
50         OMP_NUM_THREADS=2 ./cblat1
51 endif
52 ifeq ($(BUILD_COMPLEX16),1)
53         OMP_NUM_THREADS=2 ./zblat1
54 endif
55 else
56 ifeq ($(BUILD_SINGLE),1)
57         OPENBLAS_NUM_THREADS=2 ./sblat1
58 endif
59 ifeq ($(BUILD_DOUBLE),1)
60         OPENBLAS_NUM_THREADS=2 ./dblat1
61 endif
62 ifeq ($(BUILD_COMPLEX),1)
63         OPENBLAS_NUM_THREADS=2 ./cblat1
64 endif
65 ifeq ($(BUILD_COMPLEX16),1)
66         OPENBLAS_NUM_THREADS=2 ./zblat1
67 endif
68 endif
69 endif
70 endif
71
72 ifeq ($(BUILD_SINGLE),1)
73 S2=sblat2
74 endif
75 ifeq ($(BUILD_DOUBLE),1)
76 D2=dblat2
77 endif
78 ifeq ($(BUILD_COMPLEX),1)
79 C2=cblat2
80 endif
81 ifeq ($(BUILD_COMPLEX16),1)
82 Z2=zblat2
83 endif
84
85 level2: $(S2) $(D2) $(C2) $(Z2)
86
87
88 ifneq ($(CROSS), 1)
89         rm -f ?BLAT2.SUMM
90 ifeq ($(BUILD_SINGLE),1)
91         OPENBLAS_NUM_THREADS=1 OMP_NUM_THREADS=1 ./sblat2 < ./sblat2.dat
92         @$(GREP) -q FATAL SBLAT2.SUMM && cat SBLAT2.SUMM || exit 0
93 endif
94 ifeq ($(BUILD_DOUBLE),1)
95         OPENBLAS_NUM_THREADS=1 OMP_NUM_THREADS=1 ./dblat2 < ./dblat2.dat
96         @$(GREP) -q FATAL DBLAT2.SUMM && cat DBLAT2.SUMM || exit 0
97 endif
98 ifeq ($(BUILD_COMPLEX),1)
99         OPENBLAS_NUM_THREADS=1 OMP_NUM_THREADS=1 ./cblat2 < ./cblat2.dat
100         @$(GREP) -q FATAL CBLAT2.SUMM && cat CBLAT2.SUMM || exit 0
101 endif
102 ifeq ($(BUILD_COMPLEX16),1)
103         OPENBLAS_NUM_THREADS=1 OMP_NUM_THREADS=1 ./zblat2 < ./zblat2.dat
104         @$(GREP) -q FATAL ZBLAT2.SUMM && cat ZBLAT2.SUMM || exit 0
105 endif
106 ifdef SMP
107         rm -f ?BLAT2.SUMM
108 ifeq ($(USE_OPENMP), 1)
109 ifeq ($(BUILD_SINGLE),1)
110         OMP_NUM_THREADS=2 ./sblat2 < ./sblat2.dat
111         @$(GREP) -q FATAL SBLAT2.SUMM && cat SBLAT2.SUMM || exit 0
112 endif
113 ifeq ($(BUILD_DOUBLE),1)
114         OMP_NUM_THREADS=2 ./dblat2 < ./dblat2.dat
115         @$(GREP) -q FATAL DBLAT2.SUMM && cat DBLAT2.SUMM || exit 0
116 endif
117 ifeq ($(BUILD_COMPLEX),1)
118         OMP_NUM_THREADS=2 ./cblat2 < ./cblat2.dat
119         @$(GREP) -q FATAL CBLAT2.SUMM && cat CBLAT2.SUMM || exit 0
120 endif
121 ifeq ($(BUILD_COMPLEX16),1)
122         OMP_NUM_THREADS=2 ./zblat2 < ./zblat2.dat
123         @$(GREP) -q FATAL ZBLAT2.SUMM && cat ZBLAT2.SUMM || exit 0
124 endif
125 else
126 ifeq ($(BUILD_SINGLE),1)
127         OPENBLAS_NUM_THREADS=2 ./sblat2 < ./sblat2.dat
128         @$(GREP) -q FATAL SBLAT2.SUMM && cat SBLAT2.SUMM || exit 0
129 endif
130 ifeq ($(BUILD_DOUBLE),1)
131         OPENBLAS_NUM_THREADS=2 ./dblat2 < ./dblat2.dat
132         @$(GREP) -q FATAL DBLAT2.SUMM && cat DBLAT2.SUMM || exit 0
133 endif
134 ifeq ($(BUILD_COMPLEX),1)
135         OPENBLAS_NUM_THREADS=2 ./cblat2 < ./cblat2.dat
136         @$(GREP) -q FATAL CBLAT2.SUMM && cat CBLAT2.SUMM || exit 0
137 endif
138 ifeq ($(BUILD_COMPLEX16),1)
139         OPENBLAS_NUM_THREADS=2 ./zblat2 < ./zblat2.dat
140         @$(GREP) -q FATAL ZBLAT2.SUMM && cat ZBLAT2.SUMM || exit 0
141 endif
142 endif
143 endif
144 endif
145
146 ifeq ($(BUILD_BFLOAT16),1)
147 B3= test_sbgemm
148 endif
149 ifeq ($(BUILD_SINGLE),1)
150 S3=sblat3
151 endif
152 ifeq ($(BUILD_DOUBLE),1)
153 D3=dblat3
154 endif
155 ifeq ($(BUILD_COMPLEX),1)
156 C3=cblat3
157 endif
158 ifeq ($(BUILD_COMPLEX16),1)
159 Z3=zblat3
160 endif
161
162 level3: $(B3) $(S3) $(D3) $(C3) $(Z3)
163
164
165 ifneq ($(CROSS), 1)
166         rm -f ?BLAT3.SUMM
167 ifeq ($(BUILD_BFLOAT16),1)
168         OPENBLAS_NUM_THREADS=1 OMP_NUM_THREADS=1 ./test_sbgemm > SBBLAT3.SUMM
169         @$(GREP) -q FATAL SBBLAT3.SUMM && cat SBBLAT3.SUMM || exit 0
170 endif
171 ifeq ($(BUILD_SINGLE),1)
172         OPENBLAS_NUM_THREADS=1 OMP_NUM_THREADS=1 ./sblat3 < ./sblat3.dat
173         @$(GREP) -q FATAL SBLAT3.SUMM && cat SBLAT3.SUMM || exit 0
174 endif
175 ifeq ($(BUILD_DOUBLE),1)
176         OPENBLAS_NUM_THREADS=1 OMP_NUM_THREADS=1 ./dblat3 < ./dblat3.dat
177         @$(GREP) -q FATAL DBLAT3.SUMM && cat DBLAT3.SUMM || exit 0
178 endif
179 ifeq ($(BUILD_COMPLEX),1)
180         OPENBLAS_NUM_THREADS=1 OMP_NUM_THREADS=1 ./cblat3 < ./cblat3.dat
181         @$(GREP) -q FATAL CBLAT3.SUMM && cat CBLAT3.SUMM || exit 0
182 endif
183 ifeq ($(BUILD_COMPLEX16),1)
184         OPENBLAS_NUM_THREADS=1 OMP_NUM_THREADS=1 ./zblat3 < ./zblat3.dat
185         @$(GREP) -q FATAL ZBLAT3.SUMM && cat ZBLAT3.SUMM || exit 0
186 endif
187 ifdef SMP
188         rm -f ?BLAT3.SUMM
189 ifeq ($(USE_OPENMP), 1)
190 ifeq ($(BUILD_BFLOAT16),1)
191         OMP_NUM_THREADS=2 ./test_sbgemm > SBBLAT3.SUMM
192         @$(GREP) -q FATAL SBBLAT3.SUMM && cat SBBLAT3.SUMM || exit 0
193 endif
194 ifeq ($(BUILD_SINGLE),1)
195         OMP_NUM_THREADS=2 ./sblat3 < ./sblat3.dat
196         @$(GREP) -q FATAL SBLAT3.SUMM && cat SBLAT3.SUMM || exit 0
197 endif
198 ifeq ($(BUILD_DOUBLE),1)
199         OMP_NUM_THREADS=2 ./dblat3 < ./dblat3.dat
200         @$(GREP) -q FATAL DBLAT3.SUMM && cat DBLAT3.SUMM || exit 0
201 endif
202 ifeq ($(BUILD_COMPLEX),1)
203         OMP_NUM_THREADS=2 ./cblat3 < ./cblat3.dat
204         @$(GREP) -q FATAL CBLAT3.SUMM && cat CBLAT3.SUMM || exit 0
205 endif
206 ifeq ($(BUILD_COMPLEX16),1)
207         OMP_NUM_THREADS=2 ./zblat3 < ./zblat3.dat
208         @$(GREP) -q FATAL ZBLAT3.SUMM && cat ZBLAT3.SUMM || exit 0
209 endif
210 else
211 ifeq ($(BUILD_BFLOAT16),1)
212         OPENBLAS_NUM_THREADS=2 ./test_sbgemm > SBBLAT3.SUMM
213         @$(GREP) -q FATAL SBBLAT3.SUMM && cat SBBLAT3.SUMM || exit 0
214 endif
215 ifeq ($(BUILD_SINGLE),1)
216         OPENBLAS_NUM_THREADS=2 ./sblat3 < ./sblat3.dat
217         @$(GREP) -q FATAL SBLAT3.SUMM && cat SBLAT3.SUMM || exit 0
218 endif
219 ifeq ($(BUILD_DOUBLE),1)
220         OPENBLAS_NUM_THREADS=2 ./dblat3 < ./dblat3.dat
221         @$(GREP) -q FATAL DBLAT3.SUMM && cat DBLAT3.SUMM || exit 0
222 endif
223 ifeq ($(BUILD_COMPLEX),1)
224         OPENBLAS_NUM_THREADS=2 ./cblat3 < ./cblat3.dat
225         @$(GREP) -q FATAL CBLAT3.SUMM && cat CBLAT3.SUMM || exit 0
226 endif
227 ifeq ($(BUILD_COMPLEX16),1)
228         OPENBLAS_NUM_THREADS=2 ./zblat3 < ./zblat3.dat
229         @$(GREP) -q FATAL ZBLAT3.SUMM && cat ZBLAT3.SUMM || exit 0
230 endif
231 endif
232 endif
233 endif
234
235
236 level3_3m : zblat3_3m cblat3_3m
237 ifneq ($(CROSS), 1)
238         rm -f ?BLAT3_3M.SUMM
239         OPENBLAS_NUM_THREADS=1 OMP_NUM_THREADS=1 ./cblat3_3m < ./cblat3_3m.dat
240         @$(GREP) -q FATAL CBLAT3_3M.SUMM && cat CBLAT3_3M.SUMM || exit 0
241         OPENBLAS_NUM_THREADS=1 OMP_NUM_THREADS=1 ./zblat3_3m < ./zblat3_3m.dat
242         @$(GREP) -q FATAL ZBLAT3_3M.SUMM && cat ZBLAT3_3M.SUMM || exit 0
243 ifdef SMP
244         rm -f ?BLAT3_3M.SUMM
245 ifeq ($(USE_OPENMP), 1)
246         OMP_NUM_THREADS=2 ./cblat3_3m < ./cblat3_3m.dat
247         @$(GREP) -q FATAL CBLAT3_3M.SUMM && cat CBLAT3_3M.SUMM || exit 0
248         OMP_NUM_THREADS=2 ./zblat3_3m < ./zblat3_3m.dat
249         @$(GREP) -q FATAL ZBLAT3_3M.SUMM && cat ZBLAT3_3M.SUMM || exit 0
250 else
251         OPENBLAS_NUM_THREADS=2 ./cblat3_3m < ./cblat3_3m.dat
252         @$(GREP) -q FATAL CBLAT3_3M.SUMM && cat CBLAT3_3M.SUMM || exit 0
253         OPENBLAS_NUM_THREADS=2 ./zblat3_3m < ./zblat3_3m.dat
254         @$(GREP) -q FATAL ZBLAT3_3M.SUMM && cat ZBLAT3_3M.SUMM || exit 0
255 endif
256 endif
257 endif
258
259
260
261
262 FLDFLAGS = $(FFLAGS:-fPIC=) $(LDFLAGS)
263
264
265 ifeq ($(USE_OPENMP), 1)
266 ifeq ($(F_COMPILER), GFORTRAN)
267 ifeq ($(C_COMPILER), CLANG)
268 CEXTRALIB = -lomp
269 endif
270 endif
271 ifeq ($(F_COMPILER), NAG)
272 CEXTRALIB = -lgomp
273 endif
274 endif
275
276 ifeq ($(BUILD_SINGLE),1)
277 sblat1 : sblat1.$(SUFFIX) ../$(LIBNAME)
278         $(FC) $(FLDFLAGS) -o sblat1 sblat1.$(SUFFIX) ../$(LIBNAME) $(EXTRALIB) $(CEXTRALIB)
279
280 sblat2 : sblat2.$(SUFFIX) ../$(LIBNAME)
281         $(FC) $(FLDFLAGS) -o sblat2 sblat2.$(SUFFIX) ../$(LIBNAME) $(EXTRALIB) $(CEXTRALIB)
282
283 sblat3 : sblat3.$(SUFFIX) ../$(LIBNAME)
284         $(FC) $(FLDFLAGS) -o sblat3 sblat3.$(SUFFIX) ../$(LIBNAME) $(EXTRALIB) $(CEXTRALIB)
285 endif
286
287 ifeq ($(BUILD_DOUBLE),1)
288 dblat1 : dblat1.$(SUFFIX) ../$(LIBNAME)
289         $(FC) $(FLDFLAGS) -o dblat1 dblat1.$(SUFFIX) ../$(LIBNAME) $(EXTRALIB) $(CEXTRALIB)
290
291 dblat2 : dblat2.$(SUFFIX) ../$(LIBNAME)
292         $(FC) $(FLDFLAGS) -o dblat2 dblat2.$(SUFFIX) ../$(LIBNAME) $(EXTRALIB) $(CEXTRALIB)
293
294 dblat3 : dblat3.$(SUFFIX) ../$(LIBNAME)
295         $(FC) $(FLDFLAGS) -o dblat3 dblat3.$(SUFFIX) ../$(LIBNAME) $(EXTRALIB) $(CEXTRALIB)
296 else
297 dblat2:
298 dblat3:
299 endif
300
301
302 qblat1 : qblat1.$(SUFFIX) ../$(LIBNAME)
303         $(FC) $(FLDFLAGS) -o qblat1 qblat1.$(SUFFIX) ../$(LIBNAME) $(EXTRALIB) $(CEXTRALIB)
304
305 ifeq ($(BUILD_COMPLEX),1)
306 cblat1 : cblat1.$(SUFFIX) ../$(LIBNAME)
307         $(FC) $(FLDFLAGS) -o cblat1 cblat1.$(SUFFIX) ../$(LIBNAME) $(EXTRALIB) $(CEXTRALIB)
308
309 cblat2 : cblat2.$(SUFFIX) ../$(LIBNAME)
310         $(FC) $(FLDFLAGS) -o cblat2 cblat2.$(SUFFIX) ../$(LIBNAME) $(EXTRALIB) $(CEXTRALIB)
311
312 cblat3 : cblat3.$(SUFFIX) ../$(LIBNAME)
313         $(FC) $(FLDFLAGS) -o cblat3 cblat3.$(SUFFIX) ../$(LIBNAME) $(EXTRALIB) $(CEXTRALIB)
314 endif
315
316 ifeq ($(BUILD_COMPLEX16),1)
317 zblat1 : zblat1.$(SUFFIX) ../$(LIBNAME)
318         $(FC) $(FLDFLAGS) -o zblat1 zblat1.$(SUFFIX) ../$(LIBNAME) $(EXTRALIB) $(CEXTRALIB)
319
320 zblat2 : zblat2.$(SUFFIX) ../$(LIBNAME)
321         $(FC) $(FLDFLAGS) -o zblat2 zblat2.$(SUFFIX) ../$(LIBNAME) $(EXTRALIB) $(CEXTRALIB)
322
323 zblat3 : zblat3.$(SUFFIX) ../$(LIBNAME)
324         $(FC) $(FLDFLAGS) -o zblat3 zblat3.$(SUFFIX) ../$(LIBNAME) $(EXTRALIB) $(CEXTRALIB)
325 endif
326
327 ifeq ($(BUILD_BFLOAT16),1)
328 test_sbgemm : compare_sgemm_sbgemm.c ../$(LIBNAME)
329         $(FC) $(FLDFLAGS) -o test_sbgemm compare_sgemm_sbgemm.c ../$(LIBNAME) $(EXTRALIB) $(CEXTRALIB)
330 endif
331
332 ifeq ($(BUILD_COMPLEX),1)
333 cblat3_3m : cblat3_3m.$(SUFFIX) ../$(LIBNAME)
334         $(FC) $(FLDFLAGS) -o cblat3_3m cblat3_3m.$(SUFFIX) ../$(LIBNAME) $(EXTRALIB) $(CEXTRALIB)
335 endif
336
337 ifeq ($(BUILD_COMPLEX16),1)
338 zblat3_3m : zblat3_3m.$(SUFFIX) ../$(LIBNAME)
339         $(FC) $(FLDFLAGS) -o zblat3_3m zblat3_3m.$(SUFFIX) ../$(LIBNAME) $(EXTRALIB) $(CEXTRALIB)
340 endif
341
342
343
344 clean:
345         @rm -f *.$(SUFFIX) *.$(PSUFFIX) gmon.$(SUFFIX)ut *.SUMM *.cxml *.exe *.pdb *.dwf \
346         sblat1 dblat1 cblat1 zblat1 \
347         sblat2 dblat2 cblat2 zblat2 \
348         test_sbgemm sblat3 dblat3 cblat3 zblat3 \
349         sblat1p dblat1p cblat1p zblat1p \
350         sblat2p dblat2p cblat2p zblat2p \
351         sblat3p dblat3p cblat3p zblat3p \
352         zblat3_3m zblat3_3mp \
353         cblat3_3m cblat3_3mp \
354         *.stackdump *.dll
355
356 libs:
357
358 prof:
359
360 quick :
361         $(MAKE) -C $(TOPDIR) libs
362
363 # include ../Makefile.tail