You can not select more than 25 topics Topics must start with a chinese character,a letter or number, can include dashes ('-') and can be up to 35 characters long.

Makefile 7.8 kB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226
  1. TOPDIR = ..
  2. include ../Makefile.system
  3. ifeq ($(NOFORTRAN),1)
  4. all ::
  5. else
  6. all :: level1 level2 level3
  7. endif
  8. level1 : sblat1 dblat1 cblat1 zblat1
  9. ifndef CROSS
  10. OPENBLAS_NUM_THREADS=1 OMP_NUM_THREADS=1 ./sblat1
  11. OPENBLAS_NUM_THREADS=1 OMP_NUM_THREADS=1 ./dblat1
  12. OPENBLAS_NUM_THREADS=1 OMP_NUM_THREADS=1 ./cblat1
  13. OPENBLAS_NUM_THREADS=1 OMP_NUM_THREADS=1 ./zblat1
  14. ifdef SMP
  15. ifeq ($(USE_OPENMP), 1)
  16. OMP_NUM_THREADS=2 ./sblat1
  17. OMP_NUM_THREADS=2 ./dblat1
  18. OMP_NUM_THREADS=2 ./cblat1
  19. OMP_NUM_THREADS=2 ./zblat1
  20. else
  21. OPENBLAS_NUM_THREADS=2 ./sblat1
  22. OPENBLAS_NUM_THREADS=2 ./dblat1
  23. OPENBLAS_NUM_THREADS=2 ./cblat1
  24. OPENBLAS_NUM_THREADS=2 ./zblat1
  25. endif
  26. endif
  27. endif
  28. level2 : sblat2 dblat2 cblat2 zblat2
  29. ifndef CROSS
  30. rm -f ?BLAT2.SUMM
  31. OPENBLAS_NUM_THREADS=1 OMP_NUM_THREADS=1 ./sblat2 < ./sblat2.dat
  32. @$(GREP) -q FATAL SBLAT2.SUMM && cat SBLAT2.SUMM || exit 0
  33. OPENBLAS_NUM_THREADS=1 OMP_NUM_THREADS=1 ./dblat2 < ./dblat2.dat
  34. @$(GREP) -q FATAL DBLAT2.SUMM && cat DBLAT2.SUMM || exit 0
  35. OPENBLAS_NUM_THREADS=1 OMP_NUM_THREADS=1 ./cblat2 < ./cblat2.dat
  36. @$(GREP) -q FATAL CBLAT2.SUMM && cat CBLAT2.SUMM || exit 0
  37. OPENBLAS_NUM_THREADS=1 OMP_NUM_THREADS=1 ./zblat2 < ./zblat2.dat
  38. @$(GREP) -q FATAL ZBLAT2.SUMM && cat ZBLAT2.SUMM || exit 0
  39. ifdef SMP
  40. rm -f ?BLAT2.SUMM
  41. ifeq ($(USE_OPENMP), 1)
  42. OMP_NUM_THREADS=2 ./sblat2 < ./sblat2.dat
  43. @$(GREP) -q FATAL SBLAT2.SUMM && cat SBLAT2.SUMM || exit 0
  44. OMP_NUM_THREADS=2 ./dblat2 < ./dblat2.dat
  45. @$(GREP) -q FATAL DBLAT2.SUMM && cat DBLAT2.SUMM || exit 0
  46. OMP_NUM_THREADS=2 ./cblat2 < ./cblat2.dat
  47. @$(GREP) -q FATAL CBLAT2.SUMM && cat CBLAT2.SUMM || exit 0
  48. OMP_NUM_THREADS=2 ./zblat2 < ./zblat2.dat
  49. @$(GREP) -q FATAL ZBLAT2.SUMM && cat ZBLAT2.SUMM || exit 0
  50. else
  51. OPENBLAS_NUM_THREADS=2 ./sblat2 < ./sblat2.dat
  52. @$(GREP) -q FATAL SBLAT2.SUMM && cat SBLAT2.SUMM || exit 0
  53. OPENBLAS_NUM_THREADS=2 ./dblat2 < ./dblat2.dat
  54. @$(GREP) -q FATAL DBLAT2.SUMM && cat DBLAT2.SUMM || exit 0
  55. OPENBLAS_NUM_THREADS=2 ./cblat2 < ./cblat2.dat
  56. @$(GREP) -q FATAL CBLAT2.SUMM && cat CBLAT2.SUMM || exit 0
  57. OPENBLAS_NUM_THREADS=2 ./zblat2 < ./zblat2.dat
  58. @$(GREP) -q FATAL ZBLAT2.SUMM && cat ZBLAT2.SUMM || exit 0
  59. endif
  60. endif
  61. endif
  62. ifeq ($(BUILD_HALF),1)
  63. level3 : test_shgemm sblat3 dblat3 cblat3 zblat3
  64. else
  65. level3 : sblat3 dblat3 cblat3 zblat3
  66. endif
  67. ifndef CROSS
  68. rm -f ?BLAT3.SUMM
  69. ifeq ($(BUILD_HALF),1)
  70. OPENBLAS_NUM_THREADS=1 OMP_NUM_THREADS=1 ./test_shgemm > SHBLAT3.SUMM
  71. @$(GREP) -q FATAL SHBLAT3.SUMM && cat SHBLAT3.SUMM || exit 0
  72. endif
  73. OPENBLAS_NUM_THREADS=1 OMP_NUM_THREADS=1 ./sblat3 < ./sblat3.dat
  74. @$(GREP) -q FATAL SBLAT3.SUMM && cat SBLAT3.SUMM || exit 0
  75. OPENBLAS_NUM_THREADS=1 OMP_NUM_THREADS=1 ./dblat3 < ./dblat3.dat
  76. @$(GREP) -q FATAL DBLAT3.SUMM && cat DBLAT3.SUMM || exit 0
  77. OPENBLAS_NUM_THREADS=1 OMP_NUM_THREADS=1 ./cblat3 < ./cblat3.dat
  78. @$(GREP) -q FATAL CBLAT3.SUMM && cat CBLAT3.SUMM || exit 0
  79. OPENBLAS_NUM_THREADS=1 OMP_NUM_THREADS=1 ./zblat3 < ./zblat3.dat
  80. @$(GREP) -q FATAL ZBLAT3.SUMM && cat ZBLAT3.SUMM || exit 0
  81. ifdef SMP
  82. rm -f ?BLAT3.SUMM
  83. ifeq ($(USE_OPENMP), 1)
  84. ifeq ($(BUILD_HALF),1)
  85. OMP_NUM_THREADS=2 ./test_shgemm > SHBLAT3.SUMM
  86. @$(GREP) -q FATAL SHBLAT3.SUMM && cat SHBLAT3.SUMM || exit 0
  87. endif
  88. OMP_NUM_THREADS=2 ./sblat3 < ./sblat3.dat
  89. @$(GREP) -q FATAL SBLAT3.SUMM && cat SBLAT3.SUMM || exit 0
  90. OMP_NUM_THREADS=2 ./dblat3 < ./dblat3.dat
  91. @$(GREP) -q FATAL DBLAT3.SUMM && cat DBLAT3.SUMM || exit 0
  92. OMP_NUM_THREADS=2 ./cblat3 < ./cblat3.dat
  93. @$(GREP) -q FATAL CBLAT3.SUMM && cat CBLAT3.SUMM || exit 0
  94. OMP_NUM_THREADS=2 ./zblat3 < ./zblat3.dat
  95. @$(GREP) -q FATAL ZBLAT3.SUMM && cat ZBLAT3.SUMM || exit 0
  96. else
  97. ifeq ($(BUILD_HALF),1)
  98. OPENBLAS_NUM_THREADS=2 ./test_shgemm > SHBLAT3.SUMM
  99. @$(GREP) -q FATAL SHBLAT3.SUMM && cat SHBLAT3.SUMM || exit 0
  100. endif
  101. OPENBLAS_NUM_THREADS=2 ./sblat3 < ./sblat3.dat
  102. @$(GREP) -q FATAL SBLAT3.SUMM && cat SBLAT3.SUMM || exit 0
  103. OPENBLAS_NUM_THREADS=2 ./dblat3 < ./dblat3.dat
  104. @$(GREP) -q FATAL DBLAT3.SUMM && cat DBLAT3.SUMM || exit 0
  105. OPENBLAS_NUM_THREADS=2 ./cblat3 < ./cblat3.dat
  106. @$(GREP) -q FATAL CBLAT3.SUMM && cat CBLAT3.SUMM || exit 0
  107. OPENBLAS_NUM_THREADS=2 ./zblat3 < ./zblat3.dat
  108. @$(GREP) -q FATAL ZBLAT3.SUMM && cat ZBLAT3.SUMM || exit 0
  109. endif
  110. endif
  111. endif
  112. level3_3m : zblat3_3m cblat3_3m
  113. ifndef CROSS
  114. rm -f ?BLAT3_3M.SUMM
  115. OPENBLAS_NUM_THREADS=1 OMP_NUM_THREADS=1 ./cblat3_3m < ./cblat3_3m.dat
  116. @$(GREP) -q FATAL CBLAT3_3M.SUMM && cat CBLAT3_3M.SUMM || exit 0
  117. OPENBLAS_NUM_THREADS=1 OMP_NUM_THREADS=1 ./zblat3_3m < ./zblat3_3m.dat
  118. @$(GREP) -q FATAL ZBLAT3_3M.SUMM && cat ZBLAT3_3M.SUMM || exit 0
  119. ifdef SMP
  120. rm -f ?BLAT3_3M.SUMM
  121. ifeq ($(USE_OPENMP), 1)
  122. OMP_NUM_THREADS=2 ./cblat3_3m < ./cblat3_3m.dat
  123. @$(GREP) -q FATAL CBLAT3_3M.SUMM && cat CBLAT3_3M.SUMM || exit 0
  124. OMP_NUM_THREADS=2 ./zblat3_3m < ./zblat3_3m.dat
  125. @$(GREP) -q FATAL ZBLAT3_3M.SUMM && cat ZBLAT3_3M.SUMM || exit 0
  126. else
  127. OPENBLAS_NUM_THREADS=2 ./cblat3_3m < ./cblat3_3m.dat
  128. @$(GREP) -q FATAL CBLAT3_3M.SUMM && cat CBLAT3_3M.SUMM || exit 0
  129. OPENBLAS_NUM_THREADS=2 ./zblat3_3m < ./zblat3_3m.dat
  130. @$(GREP) -q FATAL ZBLAT3_3M.SUMM && cat ZBLAT3_3M.SUMM || exit 0
  131. endif
  132. endif
  133. endif
  134. FLDFLAGS = $(FFLAGS:-fPIC=) $(LDFLAGS)
  135. ifeq ($(USE_OPENMP), 1)
  136. ifeq ($(F_COMPILER), GFORTRAN)
  137. ifeq ($(C_COMPILER), CLANG)
  138. CEXTRALIB = -lomp
  139. endif
  140. endif
  141. endif
  142. sblat1 : sblat1.$(SUFFIX) ../$(LIBNAME)
  143. $(FC) $(FLDFLAGS) -o sblat1 sblat1.$(SUFFIX) ../$(LIBNAME) $(EXTRALIB) $(CEXTRALIB)
  144. dblat1 : dblat1.$(SUFFIX) ../$(LIBNAME)
  145. $(FC) $(FLDFLAGS) -o dblat1 dblat1.$(SUFFIX) ../$(LIBNAME) $(EXTRALIB) $(CEXTRALIB)
  146. qblat1 : qblat1.$(SUFFIX) ../$(LIBNAME)
  147. $(FC) $(FLDFLAGS) -o qblat1 qblat1.$(SUFFIX) ../$(LIBNAME) $(EXTRALIB) $(CEXTRALIB)
  148. cblat1 : cblat1.$(SUFFIX) ../$(LIBNAME)
  149. $(FC) $(FLDFLAGS) -o cblat1 cblat1.$(SUFFIX) ../$(LIBNAME) $(EXTRALIB) $(CEXTRALIB)
  150. zblat1 : zblat1.$(SUFFIX) ../$(LIBNAME)
  151. $(FC) $(FLDFLAGS) -o zblat1 zblat1.$(SUFFIX) ../$(LIBNAME) $(EXTRALIB) $(CEXTRALIB)
  152. sblat2 : sblat2.$(SUFFIX) ../$(LIBNAME)
  153. $(FC) $(FLDFLAGS) -o sblat2 sblat2.$(SUFFIX) ../$(LIBNAME) $(EXTRALIB) $(CEXTRALIB)
  154. dblat2 : dblat2.$(SUFFIX) ../$(LIBNAME)
  155. $(FC) $(FLDFLAGS) -o dblat2 dblat2.$(SUFFIX) ../$(LIBNAME) $(EXTRALIB) $(CEXTRALIB)
  156. cblat2 : cblat2.$(SUFFIX) ../$(LIBNAME)
  157. $(FC) $(FLDFLAGS) -o cblat2 cblat2.$(SUFFIX) ../$(LIBNAME) $(EXTRALIB) $(CEXTRALIB)
  158. zblat2 : zblat2.$(SUFFIX) ../$(LIBNAME)
  159. $(FC) $(FLDFLAGS) -o zblat2 zblat2.$(SUFFIX) ../$(LIBNAME) $(EXTRALIB) $(CEXTRALIB)
  160. sblat3 : sblat3.$(SUFFIX) ../$(LIBNAME)
  161. $(FC) $(FLDFLAGS) -o sblat3 sblat3.$(SUFFIX) ../$(LIBNAME) $(EXTRALIB) $(CEXTRALIB)
  162. ifeq ($(BUILD_HALF),1)
  163. test_shgemm : compare_sgemm_shgemm.c ../$(LIBNAME)
  164. $(FC) $(FLDFLAGS) -o test_shgemm compare_sgemm_shgemm.c ../$(LIBNAME) $(EXTRALIB) $(CEXTRALIB)
  165. endif
  166. dblat3 : dblat3.$(SUFFIX) ../$(LIBNAME)
  167. $(FC) $(FLDFLAGS) -o dblat3 dblat3.$(SUFFIX) ../$(LIBNAME) $(EXTRALIB) $(CEXTRALIB)
  168. cblat3 : cblat3.$(SUFFIX) ../$(LIBNAME)
  169. $(FC) $(FLDFLAGS) -o cblat3 cblat3.$(SUFFIX) ../$(LIBNAME) $(EXTRALIB) $(CEXTRALIB)
  170. zblat3 : zblat3.$(SUFFIX) ../$(LIBNAME)
  171. $(FC) $(FLDFLAGS) -o zblat3 zblat3.$(SUFFIX) ../$(LIBNAME) $(EXTRALIB) $(CEXTRALIB)
  172. cblat3_3m : cblat3_3m.$(SUFFIX) ../$(LIBNAME)
  173. $(FC) $(FLDFLAGS) -o cblat3_3m cblat3_3m.$(SUFFIX) ../$(LIBNAME) $(EXTRALIB) $(CEXTRALIB)
  174. zblat3_3m : zblat3_3m.$(SUFFIX) ../$(LIBNAME)
  175. $(FC) $(FLDFLAGS) -o zblat3_3m zblat3_3m.$(SUFFIX) ../$(LIBNAME) $(EXTRALIB) $(CEXTRALIB)
  176. clean:
  177. @rm -f *.$(SUFFIX) *.$(PSUFFIX) gmon.$(SUFFIX)ut *.SUMM *.cxml *.exe *.pdb *.dwf \
  178. sblat1 dblat1 cblat1 zblat1 \
  179. sblat2 dblat2 cblat2 zblat2 \
  180. test_shgemm sblat3 dblat3 cblat3 zblat3 \
  181. sblat1p dblat1p cblat1p zblat1p \
  182. sblat2p dblat2p cblat2p zblat2p \
  183. sblat3p dblat3p cblat3p zblat3p \
  184. zblat3_3m zblat3_3mp \
  185. cblat3_3m cblat3_3mp \
  186. *.stackdump *.dll
  187. libs:
  188. prof:
  189. quick :
  190. $(MAKE) -C $(TOPDIR) libs
  191. # include ../Makefile.tail