From 8a6b17f97dae84fe935d049761399b4dac59652e Mon Sep 17 00:00:00 2001 From: Martin Kroeker Date: Sun, 22 Nov 2020 16:19:31 +0100 Subject: [PATCH 1/7] Change ifndefs to ifneq --- ctest/Makefile | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/ctest/Makefile b/ctest/Makefile index cba904f75..2a893cae8 100644 --- a/ctest/Makefile +++ b/ctest/Makefile @@ -61,7 +61,7 @@ endif all1: $(all1targets) -ifndef CROSS +ifneq ($(CROSS), 1) ifeq ($(USE_OPENMP), 1) ifeq ($(BUILD_SINGLE),1) OMP_NUM_THREADS=2 ./xscblat1 @@ -106,7 +106,7 @@ endif all2: $(all2targets) -ifndef CROSS +ifneq ($(CROSS), 1) ifeq ($(USE_OPENMP), 1) ifeq ($(BUILD_SINGLE),1) OMP_NUM_THREADS=2 ./xscblat2 < sin2 @@ -152,7 +152,7 @@ endif all3: $(all3targets) -ifndef CROSS +ifneq ($(CROSS), 1) ifeq ($(USE_OPENMP), 1) ifeq ($(BUILD_SINGLE),1) OMP_NUM_THREADS=2 ./xscblat3 < sin3 From 65eb7afaf42450f3073bfc89ed4029e2ee21d61f Mon Sep 17 00:00:00 2001 From: Martin Kroeker Date: Sun, 22 Nov 2020 16:25:36 +0100 Subject: [PATCH 2/7] Change ifndef CROSS to ifneq --- test/Makefile | 360 +++++++++++++++++++------------------------------- 1 file changed, 133 insertions(+), 227 deletions(-) diff --git a/test/Makefile b/test/Makefile index 1ecce0be7..2a893cae8 100644 --- a/test/Makefile +++ b/test/Makefile @@ -1,269 +1,211 @@ -TOPDIR = .. -include ../Makefile.system +# +# The Makefile compiles c wrappers and testers for CBLAS. +# + +TOPDIR = .. +include $(TOPDIR)/Makefile.system + +override CFLAGS += -DADD$(BU) -DCBLAS +override TARGET_ARCH= +override TARGET_MACH= + +LIB = $(TOPDIR)/$(LIBNAME) + +stestl1o = c_sblas1.o + +stestl2o = c_sblas2.o c_s2chke.o auxiliary.o c_xerbla.o constant.o + +stestl3o = c_sblas3.o c_s3chke.o auxiliary.o c_xerbla.o constant.o + +dtestl1o = c_dblas1.o + +dtestl2o = c_dblas2.o c_d2chke.o auxiliary.o c_xerbla.o constant.o + +dtestl3o = c_dblas3.o c_d3chke.o auxiliary.o c_xerbla.o constant.o + +ctestl1o = c_cblas1.o + +ctestl2o = c_cblas2.o c_c2chke.o auxiliary.o c_xerbla.o constant.o + +ctestl3o = c_cblas3.o c_c3chke.o auxiliary.o c_xerbla.o constant.o + +ctestl3o_3m = c_cblas3_3m.o c_c3chke_3m.o auxiliary.o c_xerbla.o constant.o + +ztestl1o = c_zblas1.o + +ztestl2o = c_zblas2.o c_z2chke.o auxiliary.o c_xerbla.o constant.o + +ztestl3o = c_zblas3.o c_z3chke.o auxiliary.o c_xerbla.o constant.o + +ztestl3o_3m = c_zblas3_3m.o c_z3chke_3m.o auxiliary.o c_xerbla.o constant.o ifeq ($(NOFORTRAN),1) all :: else -all :: level1 level2 level3 +all :: all1 all2 all3 endif ifeq ($(BUILD_SINGLE),1) -S1=sblat1 +all1targets += xscblat1 endif ifeq ($(BUILD_DOUBLE),1) -D1=dblat1 +all1targets += xdcblat1 endif ifeq ($(BUILD_COMPLEX),1) -C1=cblat1 +all1targets += xccblat1 endif ifeq ($(BUILD_COMPLEX16),1) -Z1=zblat1 +all1targets += xzcblat1 endif -level1: $(S1) $(D1) $(C1) $(Z1) +all1: $(all1targets) -ifndef CROSS -ifeq ($(BUILD_SINGLE),1) - OPENBLAS_NUM_THREADS=1 OMP_NUM_THREADS=1 ./sblat1 -endif -ifeq ($(BUILD_DOUBLE),1) - OPENBLAS_NUM_THREADS=1 OMP_NUM_THREADS=1 ./dblat1 -endif -ifeq ($(BUILD_COMPLEX),1) - OPENBLAS_NUM_THREADS=1 OMP_NUM_THREADS=1 ./cblat1 -endif -ifeq ($(BUILD_COMPLEX16),1) - OPENBLAS_NUM_THREADS=1 OMP_NUM_THREADS=1 ./zblat1 -endif -ifdef SMP +ifneq ($(CROSS), 1) ifeq ($(USE_OPENMP), 1) ifeq ($(BUILD_SINGLE),1) - OMP_NUM_THREADS=2 ./sblat1 + OMP_NUM_THREADS=2 ./xscblat1 endif ifeq ($(BUILD_DOUBLE),1) - OMP_NUM_THREADS=2 ./dblat1 -endif + OMP_NUM_THREADS=2 ./xdcblat1 +endif ifeq ($(BUILD_COMPLEX),1) - OMP_NUM_THREADS=2 ./cblat1 + OMP_NUM_THREADS=2 ./xccblat1 endif ifeq ($(BUILD_COMPLEX16),1) - OMP_NUM_THREADS=2 ./zblat1 + OMP_NUM_THREADS=2 ./xzcblat1 endif else ifeq ($(BUILD_SINGLE),1) - OPENBLAS_NUM_THREADS=2 ./sblat1 + OPENBLAS_NUM_THREADS=2 ./xscblat1 endif ifeq ($(BUILD_DOUBLE),1) - OPENBLAS_NUM_THREADS=2 ./dblat1 + OPENBLAS_NUM_THREADS=2 ./xdcblat1 endif ifeq ($(BUILD_COMPLEX),1) - OPENBLAS_NUM_THREADS=2 ./cblat1 + OPENBLAS_NUM_THREADS=2 ./xccblat1 endif ifeq ($(BUILD_COMPLEX16),1) - OPENBLAS_NUM_THREADS=2 ./zblat1 -endif + OPENBLAS_NUM_THREADS=2 ./xzcblat1 endif endif endif ifeq ($(BUILD_SINGLE),1) -S2=sblat2 +all2targets += xscblat2 endif ifeq ($(BUILD_DOUBLE),1) -D2=dblat2 +all2targets += xdcblat2 endif ifeq ($(BUILD_COMPLEX),1) -C2=cblat2 +all2targets += xccblat2 endif ifeq ($(BUILD_COMPLEX16),1) -Z2=zblat2 +all2targets += xzcblat2 endif -level2: $(S2) $(D2) $(C2) $(Z2) +all2: $(all2targets) - -ifndef CROSS - rm -f ?BLAT2.SUMM -ifeq ($(BUILD_SINGLE),1) - OPENBLAS_NUM_THREADS=1 OMP_NUM_THREADS=1 ./sblat2 < ./sblat2.dat - @$(GREP) -q FATAL SBLAT2.SUMM && cat SBLAT2.SUMM || exit 0 -endif -ifeq ($(BUILD_DOUBLE),1) - OPENBLAS_NUM_THREADS=1 OMP_NUM_THREADS=1 ./dblat2 < ./dblat2.dat - @$(GREP) -q FATAL DBLAT2.SUMM && cat DBLAT2.SUMM || exit 0 -endif -ifeq ($(BUILD_COMPLEX),1) - OPENBLAS_NUM_THREADS=1 OMP_NUM_THREADS=1 ./cblat2 < ./cblat2.dat - @$(GREP) -q FATAL CBLAT2.SUMM && cat CBLAT2.SUMM || exit 0 -endif -ifeq ($(BUILD_COMPLEX16),1) - OPENBLAS_NUM_THREADS=1 OMP_NUM_THREADS=1 ./zblat2 < ./zblat2.dat - @$(GREP) -q FATAL ZBLAT2.SUMM && cat ZBLAT2.SUMM || exit 0 -endif -ifdef SMP - rm -f ?BLAT2.SUMM +ifneq ($(CROSS), 1) ifeq ($(USE_OPENMP), 1) ifeq ($(BUILD_SINGLE),1) - OMP_NUM_THREADS=2 ./sblat2 < ./sblat2.dat - @$(GREP) -q FATAL SBLAT2.SUMM && cat SBLAT2.SUMM || exit 0 + OMP_NUM_THREADS=2 ./xscblat2 < sin2 endif ifeq ($(BUILD_DOUBLE),1) - OMP_NUM_THREADS=2 ./dblat2 < ./dblat2.dat - @$(GREP) -q FATAL DBLAT2.SUMM && cat DBLAT2.SUMM || exit 0 + OMP_NUM_THREADS=2 ./xdcblat2 < din2 endif ifeq ($(BUILD_COMPLEX),1) - OMP_NUM_THREADS=2 ./cblat2 < ./cblat2.dat - @$(GREP) -q FATAL CBLAT2.SUMM && cat CBLAT2.SUMM || exit 0 + OMP_NUM_THREADS=2 ./xccblat2 < cin2 endif ifeq ($(BUILD_COMPLEX16),1) - OMP_NUM_THREADS=2 ./zblat2 < ./zblat2.dat - @$(GREP) -q FATAL ZBLAT2.SUMM && cat ZBLAT2.SUMM || exit 0 + OMP_NUM_THREADS=2 ./xzcblat2 < zin2 endif else ifeq ($(BUILD_SINGLE),1) - OPENBLAS_NUM_THREADS=2 ./sblat2 < ./sblat2.dat - @$(GREP) -q FATAL SBLAT2.SUMM && cat SBLAT2.SUMM || exit 0 + OPENBLAS_NUM_THREADS=2 ./xscblat2 < sin2 endif ifeq ($(BUILD_DOUBLE),1) - OPENBLAS_NUM_THREADS=2 ./dblat2 < ./dblat2.dat - @$(GREP) -q FATAL DBLAT2.SUMM && cat DBLAT2.SUMM || exit 0 + OPENBLAS_NUM_THREADS=2 ./xdcblat2 < din2 endif ifeq ($(BUILD_COMPLEX),1) - OPENBLAS_NUM_THREADS=2 ./cblat2 < ./cblat2.dat - @$(GREP) -q FATAL CBLAT2.SUMM && cat CBLAT2.SUMM || exit 0 + OPENBLAS_NUM_THREADS=2 ./xccblat2 < cin2 endif ifeq ($(BUILD_COMPLEX16),1) - OPENBLAS_NUM_THREADS=2 ./zblat2 < ./zblat2.dat - @$(GREP) -q FATAL ZBLAT2.SUMM && cat ZBLAT2.SUMM || exit 0 -endif + OPENBLAS_NUM_THREADS=2 ./xzcblat2 < zin2 endif endif endif -ifeq ($(BUILD_BFLOAT16),1) -B3= test_sbgemm -endif + ifeq ($(BUILD_SINGLE),1) -S3=sblat3 +all3targets += xscblat3 endif ifeq ($(BUILD_DOUBLE),1) -D3=dblat3 +all3targets += xdcblat3 endif ifeq ($(BUILD_COMPLEX),1) -C3=cblat3 +all3targets += xccblat3 endif ifeq ($(BUILD_COMPLEX16),1) -Z3=zblat3 +all3targets += xzcblat3 endif -level3: $(B3) $(S3) $(D3) $(C3) $(Z3) +all3: $(all3targets) - -ifndef CROSS - rm -f ?BLAT3.SUMM -ifeq ($(BUILD_BFLOAT16),1) - OPENBLAS_NUM_THREADS=1 OMP_NUM_THREADS=1 ./test_sbgemm > SBBLAT3.SUMM - @$(GREP) -q FATAL SBBLAT3.SUMM && cat SBBLAT3.SUMM || exit 0 -endif -ifeq ($(BUILD_SINGLE),1) - OPENBLAS_NUM_THREADS=1 OMP_NUM_THREADS=1 ./sblat3 < ./sblat3.dat - @$(GREP) -q FATAL SBLAT3.SUMM && cat SBLAT3.SUMM || exit 0 -endif -ifeq ($(BUILD_DOUBLE),1) - OPENBLAS_NUM_THREADS=1 OMP_NUM_THREADS=1 ./dblat3 < ./dblat3.dat - @$(GREP) -q FATAL DBLAT3.SUMM && cat DBLAT3.SUMM || exit 0 -endif -ifeq ($(BUILD_COMPLEX),1) - OPENBLAS_NUM_THREADS=1 OMP_NUM_THREADS=1 ./cblat3 < ./cblat3.dat - @$(GREP) -q FATAL CBLAT3.SUMM && cat CBLAT3.SUMM || exit 0 -endif -ifeq ($(BUILD_COMPLEX16),1) - OPENBLAS_NUM_THREADS=1 OMP_NUM_THREADS=1 ./zblat3 < ./zblat3.dat - @$(GREP) -q FATAL ZBLAT3.SUMM && cat ZBLAT3.SUMM || exit 0 -endif -ifdef SMP - rm -f ?BLAT3.SUMM +ifneq ($(CROSS), 1) ifeq ($(USE_OPENMP), 1) -ifeq ($(BUILD_BFLOAT16),1) - OMP_NUM_THREADS=2 ./test_sbgemm > SBBLAT3.SUMM - @$(GREP) -q FATAL SBBLAT3.SUMM && cat SBBLAT3.SUMM || exit 0 -endif ifeq ($(BUILD_SINGLE),1) - OMP_NUM_THREADS=2 ./sblat3 < ./sblat3.dat - @$(GREP) -q FATAL SBLAT3.SUMM && cat SBLAT3.SUMM || exit 0 + OMP_NUM_THREADS=2 ./xscblat3 < sin3 endif ifeq ($(BUILD_DOUBLE),1) - OMP_NUM_THREADS=2 ./dblat3 < ./dblat3.dat - @$(GREP) -q FATAL DBLAT3.SUMM && cat DBLAT3.SUMM || exit 0 + OMP_NUM_THREADS=2 ./xdcblat3 < din3 endif ifeq ($(BUILD_COMPLEX),1) - OMP_NUM_THREADS=2 ./cblat3 < ./cblat3.dat - @$(GREP) -q FATAL CBLAT3.SUMM && cat CBLAT3.SUMM || exit 0 + OMP_NUM_THREADS=2 ./xccblat3 < cin3 endif ifeq ($(BUILD_COMPLEX16),1) - OMP_NUM_THREADS=2 ./zblat3 < ./zblat3.dat - @$(GREP) -q FATAL ZBLAT3.SUMM && cat ZBLAT3.SUMM || exit 0 + OMP_NUM_THREADS=2 ./xzcblat3 < zin3 endif else -ifeq ($(BUILD_BFLOAT16),1) - OPENBLAS_NUM_THREADS=2 ./test_sbgemm > SBBLAT3.SUMM - @$(GREP) -q FATAL SBBLAT3.SUMM && cat SBBLAT3.SUMM || exit 0 -endif ifeq ($(BUILD_SINGLE),1) - OPENBLAS_NUM_THREADS=2 ./sblat3 < ./sblat3.dat - @$(GREP) -q FATAL SBLAT3.SUMM && cat SBLAT3.SUMM || exit 0 + OPENBLAS_NUM_THREADS=2 ./xscblat3 < sin3 endif ifeq ($(BUILD_DOUBLE),1) - OPENBLAS_NUM_THREADS=2 ./dblat3 < ./dblat3.dat - @$(GREP) -q FATAL DBLAT3.SUMM && cat DBLAT3.SUMM || exit 0 + OPENBLAS_NUM_THREADS=2 ./xdcblat3 < din3 endif ifeq ($(BUILD_COMPLEX),1) - OPENBLAS_NUM_THREADS=2 ./cblat3 < ./cblat3.dat - @$(GREP) -q FATAL CBLAT3.SUMM && cat CBLAT3.SUMM || exit 0 + OPENBLAS_NUM_THREADS=2 ./xccblat3 < cin3 endif ifeq ($(BUILD_COMPLEX16),1) - OPENBLAS_NUM_THREADS=2 ./zblat3 < ./zblat3.dat - @$(GREP) -q FATAL ZBLAT3.SUMM && cat ZBLAT3.SUMM || exit 0 -endif + OPENBLAS_NUM_THREADS=2 ./xzcblat3 < zin3 endif endif endif - -level3_3m : zblat3_3m cblat3_3m -ifndef CROSS - rm -f ?BLAT3_3M.SUMM - OPENBLAS_NUM_THREADS=1 OMP_NUM_THREADS=1 ./cblat3_3m < ./cblat3_3m.dat - @$(GREP) -q FATAL CBLAT3_3M.SUMM && cat CBLAT3_3M.SUMM || exit 0 - OPENBLAS_NUM_THREADS=1 OMP_NUM_THREADS=1 ./zblat3_3m < ./zblat3_3m.dat - @$(GREP) -q FATAL ZBLAT3_3M.SUMM && cat ZBLAT3_3M.SUMM || exit 0 -ifdef SMP - rm -f ?BLAT3_3M.SUMM +all3_3m: xzcblat3_3m xccblat3_3m ifeq ($(USE_OPENMP), 1) - OMP_NUM_THREADS=2 ./cblat3_3m < ./cblat3_3m.dat - @$(GREP) -q FATAL CBLAT3_3M.SUMM && cat CBLAT3_3M.SUMM || exit 0 - OMP_NUM_THREADS=2 ./zblat3_3m < ./zblat3_3m.dat - @$(GREP) -q FATAL ZBLAT3_3M.SUMM && cat ZBLAT3_3M.SUMM || exit 0 +ifeq ($(BUILD_SINGLE),1) + OMP_NUM_THREADS=2 ./xccblat3_3m < cin3_3m +endif +ifeq ($(BUILD_COMPLEX16),1) + OMP_NUM_THREADS=2 ./xzcblat3_3m < zin3_3m +endif else - OPENBLAS_NUM_THREADS=2 ./cblat3_3m < ./cblat3_3m.dat - @$(GREP) -q FATAL CBLAT3_3M.SUMM && cat CBLAT3_3M.SUMM || exit 0 - OPENBLAS_NUM_THREADS=2 ./zblat3_3m < ./zblat3_3m.dat - @$(GREP) -q FATAL ZBLAT3_3M.SUMM && cat ZBLAT3_3M.SUMM || exit 0 +ifeq ($(BUILD_COMPLEX),1) + OPENBLAS_NUM_THREADS=2 ./xccblat3_3m < cin3_3m endif +ifeq ($(BUILD_COMPLEX16),1) + OPENBLAS_NUM_THREADS=2 ./xzcblat3_3m < zin3_3m endif endif +clean :: + rm -f x* + FLDFLAGS = $(FFLAGS:-fPIC=) $(LDFLAGS) - -ifeq ($(CORE), C910V) -EXTRALIB = -CEXTRALIB = -endif - ifeq ($(USE_OPENMP), 1) ifeq ($(F_COMPILER), GFORTRAN) ifeq ($(C_COMPILER), CLANG) @@ -273,90 +215,54 @@ endif endif ifeq ($(BUILD_SINGLE),1) -sblat1 : sblat1.$(SUFFIX) ../$(LIBNAME) - $(FC) $(FLDFLAGS) -o sblat1 sblat1.$(SUFFIX) ../$(LIBNAME) $(EXTRALIB) $(CEXTRALIB) +# Single real +xscblat1: $(stestl1o) c_sblat1.o $(TOPDIR)/$(LIBNAME) + $(FC) $(FLDFLAGS) -o xscblat1 c_sblat1.o $(stestl1o) $(LIB) $(EXTRALIB) $(CEXTRALIB) -sblat2 : sblat2.$(SUFFIX) ../$(LIBNAME) - $(FC) $(FLDFLAGS) -o sblat2 sblat2.$(SUFFIX) ../$(LIBNAME) $(EXTRALIB) $(CEXTRALIB) +xscblat2: $(stestl2o) c_sblat2.o $(TOPDIR)/$(LIBNAME) + $(FC) $(FLDFLAGS) -o xscblat2 c_sblat2.o $(stestl2o) $(LIB) $(EXTRALIB) $(CEXTRALIB) -sblat3 : sblat3.$(SUFFIX) ../$(LIBNAME) - $(FC) $(FLDFLAGS) -o sblat3 sblat3.$(SUFFIX) ../$(LIBNAME) $(EXTRALIB) $(CEXTRALIB) +xscblat3: $(stestl3o) c_sblat3.o $(TOPDIR)/$(LIBNAME) + $(FC) $(FLDFLAGS) -o xscblat3 c_sblat3.o $(stestl3o) $(LIB) $(EXTRALIB) $(CEXTRALIB) endif ifeq ($(BUILD_DOUBLE),1) -dblat1 : dblat1.$(SUFFIX) ../$(LIBNAME) - $(FC) $(FLDFLAGS) -o dblat1 dblat1.$(SUFFIX) ../$(LIBNAME) $(EXTRALIB) $(CEXTRALIB) - -dblat2 : dblat2.$(SUFFIX) ../$(LIBNAME) - $(FC) $(FLDFLAGS) -o dblat2 dblat2.$(SUFFIX) ../$(LIBNAME) $(EXTRALIB) $(CEXTRALIB) - -dblat3 : dblat3.$(SUFFIX) ../$(LIBNAME) - $(FC) $(FLDFLAGS) -o dblat3 dblat3.$(SUFFIX) ../$(LIBNAME) $(EXTRALIB) $(CEXTRALIB) -else -dblat2: -dblat3: +# Double real +xdcblat1: $(dtestl1o) c_dblat1.o $(TOPDIR)/$(LIBNAME) + $(FC) $(FLDFLAGS) -o xdcblat1 c_dblat1.o $(dtestl1o) $(LIB) $(EXTRALIB) $(CEXTRALIB) +xdcblat2: $(dtestl2o) c_dblat2.o $(TOPDIR)/$(LIBNAME) + $(FC) $(FLDFLAGS) -o xdcblat2 c_dblat2.o $(dtestl2o) $(LIB) $(EXTRALIB) $(CEXTRALIB) +xdcblat3: $(dtestl3o) c_dblat3.o $(TOPDIR)/$(LIBNAME) + $(FC) $(FLDFLAGS) -o xdcblat3 c_dblat3.o $(dtestl3o) $(LIB) $(EXTRALIB) $(CEXTRALIB) endif -qblat1 : qblat1.$(SUFFIX) ../$(LIBNAME) - $(FC) $(FLDFLAGS) -o qblat1 qblat1.$(SUFFIX) ../$(LIBNAME) $(EXTRALIB) $(CEXTRALIB) - ifeq ($(BUILD_COMPLEX),1) -cblat1 : cblat1.$(SUFFIX) ../$(LIBNAME) - $(FC) $(FLDFLAGS) -o cblat1 cblat1.$(SUFFIX) ../$(LIBNAME) $(EXTRALIB) $(CEXTRALIB) +# Single complex +xccblat1: $(ctestl1o) c_cblat1.o $(TOPDIR)/$(LIBNAME) + $(FC) $(FLDFLAGS) -o xccblat1 c_cblat1.o $(ctestl1o) $(LIB) $(EXTRALIB) $(CEXTRALIB) +xccblat2: $(ctestl2o) c_cblat2.o $(TOPDIR)/$(LIBNAME) + $(FC) $(FLDFLAGS) -o xccblat2 c_cblat2.o $(ctestl2o) $(LIB) $(EXTRALIB) $(CEXTRALIB) +xccblat3: $(ctestl3o) c_cblat3.o $(TOPDIR)/$(LIBNAME) + $(FC) $(FLDFLAGS) -o xccblat3 c_cblat3.o $(ctestl3o) $(LIB) $(EXTRALIB) $(CEXTRALIB) -cblat2 : cblat2.$(SUFFIX) ../$(LIBNAME) - $(FC) $(FLDFLAGS) -o cblat2 cblat2.$(SUFFIX) ../$(LIBNAME) $(EXTRALIB) $(CEXTRALIB) - -cblat3 : cblat3.$(SUFFIX) ../$(LIBNAME) - $(FC) $(FLDFLAGS) -o cblat3 cblat3.$(SUFFIX) ../$(LIBNAME) $(EXTRALIB) $(CEXTRALIB) +xccblat3_3m: $(ctestl3o_3m) c_cblat3_3m.o $(TOPDIR)/$(LIBNAME) + $(FC) $(FLDFLAGS) -o xccblat3_3m c_cblat3_3m.o $(ctestl3o_3m) $(LIB) $(EXTRALIB) $(CEXTRALIB) endif + ifeq ($(BUILD_COMPLEX16),1) -zblat1 : zblat1.$(SUFFIX) ../$(LIBNAME) - $(FC) $(FLDFLAGS) -o zblat1 zblat1.$(SUFFIX) ../$(LIBNAME) $(EXTRALIB) $(CEXTRALIB) +# Double complex +xzcblat1: $(ztestl1o) c_zblat1.o $(TOPDIR)/$(LIBNAME) + $(FC) $(FLDFLAGS) -o xzcblat1 c_zblat1.o $(ztestl1o) $(LIB) $(EXTRALIB) $(CEXTRALIB) +xzcblat2: $(ztestl2o) c_zblat2.o $(TOPDIR)/$(LIBNAME) + $(FC) $(FLDFLAGS) -o xzcblat2 c_zblat2.o $(ztestl2o) $(LIB) $(EXTRALIB) $(CEXTRALIB) +xzcblat3: $(ztestl3o) c_zblat3.o $(TOPDIR)/$(LIBNAME) + $(FC) $(FLDFLAGS) -o xzcblat3 c_zblat3.o $(ztestl3o) $(LIB) $(EXTRALIB) $(CEXTRALIB) -zblat2 : zblat2.$(SUFFIX) ../$(LIBNAME) - $(FC) $(FLDFLAGS) -o zblat2 zblat2.$(SUFFIX) ../$(LIBNAME) $(EXTRALIB) $(CEXTRALIB) -zblat3 : zblat3.$(SUFFIX) ../$(LIBNAME) - $(FC) $(FLDFLAGS) -o zblat3 zblat3.$(SUFFIX) ../$(LIBNAME) $(EXTRALIB) $(CEXTRALIB) +xzcblat3_3m: $(ztestl3o_3m) c_zblat3_3m.o $(TOPDIR)/$(LIBNAME) + $(FC) $(FLDFLAGS) -o xzcblat3_3m c_zblat3_3m.o $(ztestl3o_3m) $(LIB) $(EXTRALIB) $(CEXTRALIB) endif -ifeq ($(BUILD_BFLOAT16),1) -test_sbgemm : compare_sgemm_sbgemm.c ../$(LIBNAME) - $(FC) $(FLDFLAGS) -o test_sbgemm compare_sgemm_sbgemm.c ../$(LIBNAME) $(EXTRALIB) $(CEXTRALIB) -endif - -ifeq ($(BUILD_COMPLEX),1) -cblat3_3m : cblat3_3m.$(SUFFIX) ../$(LIBNAME) - $(FC) $(FLDFLAGS) -o cblat3_3m cblat3_3m.$(SUFFIX) ../$(LIBNAME) $(EXTRALIB) $(CEXTRALIB) -endif - -ifeq ($(BUILD_COMPLEX16),1) -zblat3_3m : zblat3_3m.$(SUFFIX) ../$(LIBNAME) - $(FC) $(FLDFLAGS) -o zblat3_3m zblat3_3m.$(SUFFIX) ../$(LIBNAME) $(EXTRALIB) $(CEXTRALIB) -endif - - - -clean: - @rm -f *.$(SUFFIX) *.$(PSUFFIX) gmon.$(SUFFIX)ut *.SUMM *.cxml *.exe *.pdb *.dwf \ - sblat1 dblat1 cblat1 zblat1 \ - sblat2 dblat2 cblat2 zblat2 \ - test_sbgemm sblat3 dblat3 cblat3 zblat3 \ - sblat1p dblat1p cblat1p zblat1p \ - sblat2p dblat2p cblat2p zblat2p \ - sblat3p dblat3p cblat3p zblat3p \ - zblat3_3m zblat3_3mp \ - cblat3_3m cblat3_3mp \ - *.stackdump *.dll - -libs: - -prof: - -quick : - $(MAKE) -C $(TOPDIR) libs - -# include ../Makefile.tail +include $(TOPDIR)/Makefile.tail From d3ff1f889fad96bf20cc3536bfab1c9ac58f4056 Mon Sep 17 00:00:00 2001 From: Martin Kroeker Date: Sun, 22 Nov 2020 16:27:17 +0100 Subject: [PATCH 3/7] Convert ifndefs to ifneq --- driver/level3/Makefile | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/driver/level3/Makefile b/driver/level3/Makefile index b528dfa2d..78f32b961 100644 --- a/driver/level3/Makefile +++ b/driver/level3/Makefile @@ -206,7 +206,7 @@ ifdef SMP COMMONOBJS += gemm_thread_m.$(SUFFIX) gemm_thread_n.$(SUFFIX) gemm_thread_mn.$(SUFFIX) gemm_thread_variable.$(SUFFIX) COMMONOBJS += syrk_thread.$(SUFFIX) -ifndef USE_SIMPLE_THREADED_LEVEL3 +ifneq ($(USE_SIMPLE_THREADED_LEVEL3), 1) ifeq ($(BUILD_BFLOAT16),1) SBBLASOBJS += sbgemm_thread_nn.$(SUFFIX) sbgemm_thread_nt.$(SUFFIX) sbgemm_thread_tn.$(SUFFIX) sbgemm_thread_tt.$(SUFFIX) endif @@ -282,7 +282,7 @@ HPLOBJS = \ dtrsm_RNUU.$(SUFFIX) dtrsm_RNUN.$(SUFFIX) dtrsm_RNLU.$(SUFFIX) dtrsm_RNLN.$(SUFFIX) \ dtrsm_RTUU.$(SUFFIX) dtrsm_RTUN.$(SUFFIX) dtrsm_RTLU.$(SUFFIX) dtrsm_RTLN.$(SUFFIX) -ifndef USE_SIMPLE_THREADED_LEVEL3 +ifneq ($(USE_SIMPLE_THREADED_LEVEL3), 1) HPLOBJS += dgemm_thread_nn.$(SUFFIX) dgemm_thread_nt.$(SUFFIX) \ dgemm_thread_tn.$(SUFFIX) dgemm_thread_tt.$(SUFFIX) endif @@ -297,13 +297,13 @@ ifeq ($(BUILD_DOUBLE),1) strsm_RTUU.$(SUFFIX) strsm_RTUN.$(SUFFIX) strsm_RTLU.$(SUFFIX) strsm_RTLN.$(SUFFIX) \ ssyrk_UN.$(SUFFIX) ssyrk_UT.$(SUFFIX) ssyrk_LN.$(SUFFIX) ssyrk_LT.$(SUFFIX) \ ssyrk_kernel_U.$(SUFFIX) ssyrk_kernel_L.$(SUFFIX) -ifndef USE_SIMPLE_THREADED_LEVEL3 +ifneq ($(USE_SIMPLE_THREADED_LEVEL3), 1) SBLASOBJS += ssyrk_thread_UN.$(SUFFIX) ssyrk_thread_UT.$(SUFFIX) ssyrk_thread_LN.$(SUFFIX) ssyrk_thread_LT.$(SUFFIX) endif endif ifeq ($(BUILD_COMPLEX),1) SBLASOBJS = sgemm_nn.$(SUFFIX) sgemm_nt.$(SUFFIX) sgemm_tn.$(SUFFIX) sgemm_tt.$(SUFFIX) -ifndef USE_SIMPLE_THREADED_LEVEL3 +ifneq ($(USE_SIMPLE_THREADED_LEVEL3), 1) SBLASOBJS += sgemm_thread_nn.$(SUFFIX) sgemm_thread_nt.$(SUFFIX) sgemm_thread_tn.$(SUFFIX) sgemm_thread_tt.$(SUFFIX) endif endif @@ -312,7 +312,7 @@ ifneq ($(BUILD_DOUBLE),1) DBLASOBJS= ifeq ($(BUILD_COMPLEX16),1) DBLASOBJS = dgemm_nn.$(SUFFIX) dgemm_nt.$(SUFFIX) dgemm_tn.$(SUFFIX) dgemm_tt.$(SUFFIX) -ifndef USE_SIMPLE_THREADED_LEVEL3 +ifneq ($(USE_SIMPLE_THREADED_LEVEL3), 1) DBLASOBJS += dgemm_thread_nn.$(SUFFIX) dgemm_thread_nt.$(SUFFIX) dgemm_thread_tn.$(SUFFIX) dgemm_thread_tt.$(SUFFIX) endif endif @@ -332,7 +332,7 @@ ifeq ($(BUILD_COMPLEX16),1) ctrsm_RTUU.$(SUFFIX) ctrsm_RTUN.$(SUFFIX) ctrsm_RTLU.$(SUFFIX) ctrsm_RTLN.$(SUFFIX) \ ctrsm_RRUU.$(SUFFIX) ctrsm_RRUN.$(SUFFIX) ctrsm_RRLU.$(SUFFIX) ctrsm_RRLN.$(SUFFIX) \ ctrsm_RCUU.$(SUFFIX) ctrsm_RCUN.$(SUFFIX) ctrsm_RCLU.$(SUFFIX) ctrsm_RCLN.$(SUFFIX) -ifndef USE_SIMPLE_THREADED_LEVEL3 +ifneq ($(USE_SIMPLE_THREADED_LEVEL3), 1) CBLASOBJS += cherk_thread_UN.$(SUFFIX) cherk_thread_UC.$(SUFFIX) cherk_thread_LN.$(SUFFIX) cherk_thread_LC.$(SUFFIX) endif endif From 5fa305172a610264747cf6324bce639c67b3a7b9 Mon Sep 17 00:00:00 2001 From: Martin Kroeker Date: Sun, 22 Nov 2020 16:29:56 +0100 Subject: [PATCH 4/7] Use ifeq instead of ifdef for user-definable options --- driver/others/Makefile | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/driver/others/Makefile b/driver/others/Makefile index 7558ec058..d09444f56 100644 --- a/driver/others/Makefile +++ b/driver/others/Makefile @@ -7,7 +7,7 @@ COMMONOBJS = memory.$(SUFFIX) xerbla.$(SUFFIX) c_abs.$(SUFFIX) z_abs.$(SUFFIX) ifdef SMP COMMONOBJS += blas_server.$(SUFFIX) divtable.$(SUFFIX) blasL1thread.$(SUFFIX) -ifndef NO_AFFINITY +ifneq ($(NO_AFFINITY), 1) COMMONOBJS += init.$(SUFFIX) endif endif @@ -32,11 +32,11 @@ else COMMONOBJS += parameter.$(SUFFIX) endif -ifdef EXPRECISION +ifeq ($(EXPRECISION), 1) COMMONOBJS += x_abs.$(SUFFIX) qlamch.$(SUFFIX) qlamc3.$(SUFFIX) endif -ifdef QUAD_PRECISION +ifeq ($(QUAD_PRECISION), 1) COMMONOBJS += addx.$(SUFFIX) mulx.$(SUFFIX) endif @@ -46,11 +46,9 @@ ifeq ($(C_COMPILER), PGI) endif endif -ifdef USE_CUDA ifeq ($(USE_CUDA), 1) COMMONOBJS += cuda_init.$(SUFFIX) endif -endif ifdef FUNCTION_PROFILE COMMONOBJS += profile.$(SUFFIX) From 857afcc41d695cf6ed0279d8476bad50e0e9fdf3 Mon Sep 17 00:00:00 2001 From: Martin Kroeker Date: Sun, 22 Nov 2020 16:31:44 +0100 Subject: [PATCH 5/7] Use ifeq instead of ifdef for user-definable build options --- interface/Makefile | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/interface/Makefile b/interface/Makefile index 7b0bf1792..597956fdb 100644 --- a/interface/Makefile +++ b/interface/Makefile @@ -19,7 +19,7 @@ ifeq ($(ARCH), MIPS) SUPPORT_GEMM3M = 1 endif -ifndef NO_FBLAS +ifneq ($(NO_FBLAS), 1) SBLAS1OBJS = \ saxpy.$(SUFFIX) sswap.$(SUFFIX) \ @@ -146,7 +146,7 @@ ZBLAS3OBJS += zgemm3m.$(SUFFIX) endif -ifdef EXPRECISION +ifeq ($(EXPRECISION), 1) QBLAS1OBJS = \ qaxpy.$(SUFFIX) qswap.$(SUFFIX) \ @@ -511,11 +511,11 @@ endif FUNCOBJS = $(SBEXTOBJS) $(CXERBLAOBJS) $(SBBLASOBJS) $(SBLASOBJS) $(DBLASOBJS) $(CBLASOBJS) $(ZBLASOBJS) -ifdef EXPRECISION +ifeq ($(EXPRECISION), 1) FUNCOBJS += $(QBLASOBJS) $(XBLASOBJS) endif -ifdef QUAD_PRECISION +ifeq ($(QUAD_PRECISION), 1) FUNCOBJS += $(QBLASOBJS) $(XBLASOBJS) endif From ebb8788696a61adba6819c08f323a68e8d2c43c8 Mon Sep 17 00:00:00 2001 From: Martin Kroeker Date: Sun, 22 Nov 2020 16:33:34 +0100 Subject: [PATCH 6/7] Use ifneq instead of ifdef for CROSS option --- utest/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/utest/Makefile b/utest/Makefile index ac8c6f72a..1fc30d088 100644 --- a/utest/Makefile +++ b/utest/Makefile @@ -45,7 +45,7 @@ $(UTESTBIN): $(OBJS) $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^ ../$(LIBNAME) $(EXTRALIB) $(FEXTRALIB) run_test: $(UTESTBIN) -ifndef CROSS +ifneq ($(CROSS), 1) ./$(UTESTBIN) endif From 2b114c3f30ff70c23fbbe3215e62f83fadb70f9e Mon Sep 17 00:00:00 2001 From: Martin Kroeker Date: Sun, 22 Nov 2020 17:16:22 +0100 Subject: [PATCH 7/7] Restore proper Makefile --- test/Makefile | 366 +++++++++++++++++++++++++++++++------------------- 1 file changed, 230 insertions(+), 136 deletions(-) diff --git a/test/Makefile b/test/Makefile index 2a893cae8..5f653414a 100644 --- a/test/Makefile +++ b/test/Makefile @@ -1,211 +1,269 @@ -# -# The Makefile compiles c wrappers and testers for CBLAS. -# - -TOPDIR = .. -include $(TOPDIR)/Makefile.system - -override CFLAGS += -DADD$(BU) -DCBLAS -override TARGET_ARCH= -override TARGET_MACH= - -LIB = $(TOPDIR)/$(LIBNAME) - -stestl1o = c_sblas1.o - -stestl2o = c_sblas2.o c_s2chke.o auxiliary.o c_xerbla.o constant.o - -stestl3o = c_sblas3.o c_s3chke.o auxiliary.o c_xerbla.o constant.o - -dtestl1o = c_dblas1.o - -dtestl2o = c_dblas2.o c_d2chke.o auxiliary.o c_xerbla.o constant.o - -dtestl3o = c_dblas3.o c_d3chke.o auxiliary.o c_xerbla.o constant.o - -ctestl1o = c_cblas1.o - -ctestl2o = c_cblas2.o c_c2chke.o auxiliary.o c_xerbla.o constant.o - -ctestl3o = c_cblas3.o c_c3chke.o auxiliary.o c_xerbla.o constant.o - -ctestl3o_3m = c_cblas3_3m.o c_c3chke_3m.o auxiliary.o c_xerbla.o constant.o - -ztestl1o = c_zblas1.o - -ztestl2o = c_zblas2.o c_z2chke.o auxiliary.o c_xerbla.o constant.o - -ztestl3o = c_zblas3.o c_z3chke.o auxiliary.o c_xerbla.o constant.o - -ztestl3o_3m = c_zblas3_3m.o c_z3chke_3m.o auxiliary.o c_xerbla.o constant.o +TOPDIR = .. +include ../Makefile.system ifeq ($(NOFORTRAN),1) all :: else -all :: all1 all2 all3 +all :: level1 level2 level3 endif ifeq ($(BUILD_SINGLE),1) -all1targets += xscblat1 +S1=sblat1 endif ifeq ($(BUILD_DOUBLE),1) -all1targets += xdcblat1 +D1=dblat1 endif ifeq ($(BUILD_COMPLEX),1) -all1targets += xccblat1 +C1=cblat1 endif ifeq ($(BUILD_COMPLEX16),1) -all1targets += xzcblat1 +Z1=zblat1 endif -all1: $(all1targets) +level1: $(S1) $(D1) $(C1) $(Z1) ifneq ($(CROSS), 1) -ifeq ($(USE_OPENMP), 1) ifeq ($(BUILD_SINGLE),1) - OMP_NUM_THREADS=2 ./xscblat1 + OPENBLAS_NUM_THREADS=1 OMP_NUM_THREADS=1 ./sblat1 endif ifeq ($(BUILD_DOUBLE),1) - OMP_NUM_THREADS=2 ./xdcblat1 -endif + OPENBLAS_NUM_THREADS=1 OMP_NUM_THREADS=1 ./dblat1 +endif ifeq ($(BUILD_COMPLEX),1) - OMP_NUM_THREADS=2 ./xccblat1 + OPENBLAS_NUM_THREADS=1 OMP_NUM_THREADS=1 ./cblat1 endif ifeq ($(BUILD_COMPLEX16),1) - OMP_NUM_THREADS=2 ./xzcblat1 + OPENBLAS_NUM_THREADS=1 OMP_NUM_THREADS=1 ./zblat1 +endif +ifdef SMP +ifeq ($(USE_OPENMP), 1) +ifeq ($(BUILD_SINGLE),1) + OMP_NUM_THREADS=2 ./sblat1 +endif +ifeq ($(BUILD_DOUBLE),1) + OMP_NUM_THREADS=2 ./dblat1 +endif +ifeq ($(BUILD_COMPLEX),1) + OMP_NUM_THREADS=2 ./cblat1 +endif +ifeq ($(BUILD_COMPLEX16),1) + OMP_NUM_THREADS=2 ./zblat1 endif else ifeq ($(BUILD_SINGLE),1) - OPENBLAS_NUM_THREADS=2 ./xscblat1 + OPENBLAS_NUM_THREADS=2 ./sblat1 endif ifeq ($(BUILD_DOUBLE),1) - OPENBLAS_NUM_THREADS=2 ./xdcblat1 + OPENBLAS_NUM_THREADS=2 ./dblat1 endif ifeq ($(BUILD_COMPLEX),1) - OPENBLAS_NUM_THREADS=2 ./xccblat1 + OPENBLAS_NUM_THREADS=2 ./cblat1 endif ifeq ($(BUILD_COMPLEX16),1) - OPENBLAS_NUM_THREADS=2 ./xzcblat1 + OPENBLAS_NUM_THREADS=2 ./zblat1 +endif endif endif endif ifeq ($(BUILD_SINGLE),1) -all2targets += xscblat2 +S2=sblat2 endif ifeq ($(BUILD_DOUBLE),1) -all2targets += xdcblat2 +D2=dblat2 endif ifeq ($(BUILD_COMPLEX),1) -all2targets += xccblat2 +C2=cblat2 endif ifeq ($(BUILD_COMPLEX16),1) -all2targets += xzcblat2 +Z2=zblat2 endif -all2: $(all2targets) +level2: $(S2) $(D2) $(C2) $(Z2) + ifneq ($(CROSS), 1) -ifeq ($(USE_OPENMP), 1) + rm -f ?BLAT2.SUMM ifeq ($(BUILD_SINGLE),1) - OMP_NUM_THREADS=2 ./xscblat2 < sin2 + OPENBLAS_NUM_THREADS=1 OMP_NUM_THREADS=1 ./sblat2 < ./sblat2.dat + @$(GREP) -q FATAL SBLAT2.SUMM && cat SBLAT2.SUMM || exit 0 endif ifeq ($(BUILD_DOUBLE),1) - OMP_NUM_THREADS=2 ./xdcblat2 < din2 + OPENBLAS_NUM_THREADS=1 OMP_NUM_THREADS=1 ./dblat2 < ./dblat2.dat + @$(GREP) -q FATAL DBLAT2.SUMM && cat DBLAT2.SUMM || exit 0 endif ifeq ($(BUILD_COMPLEX),1) - OMP_NUM_THREADS=2 ./xccblat2 < cin2 + OPENBLAS_NUM_THREADS=1 OMP_NUM_THREADS=1 ./cblat2 < ./cblat2.dat + @$(GREP) -q FATAL CBLAT2.SUMM && cat CBLAT2.SUMM || exit 0 endif ifeq ($(BUILD_COMPLEX16),1) - OMP_NUM_THREADS=2 ./xzcblat2 < zin2 + OPENBLAS_NUM_THREADS=1 OMP_NUM_THREADS=1 ./zblat2 < ./zblat2.dat + @$(GREP) -q FATAL ZBLAT2.SUMM && cat ZBLAT2.SUMM || exit 0 +endif +ifdef SMP + rm -f ?BLAT2.SUMM +ifeq ($(USE_OPENMP), 1) +ifeq ($(BUILD_SINGLE),1) + OMP_NUM_THREADS=2 ./sblat2 < ./sblat2.dat + @$(GREP) -q FATAL SBLAT2.SUMM && cat SBLAT2.SUMM || exit 0 +endif +ifeq ($(BUILD_DOUBLE),1) + OMP_NUM_THREADS=2 ./dblat2 < ./dblat2.dat + @$(GREP) -q FATAL DBLAT2.SUMM && cat DBLAT2.SUMM || exit 0 +endif +ifeq ($(BUILD_COMPLEX),1) + OMP_NUM_THREADS=2 ./cblat2 < ./cblat2.dat + @$(GREP) -q FATAL CBLAT2.SUMM && cat CBLAT2.SUMM || exit 0 +endif +ifeq ($(BUILD_COMPLEX16),1) + OMP_NUM_THREADS=2 ./zblat2 < ./zblat2.dat + @$(GREP) -q FATAL ZBLAT2.SUMM && cat ZBLAT2.SUMM || exit 0 endif else ifeq ($(BUILD_SINGLE),1) - OPENBLAS_NUM_THREADS=2 ./xscblat2 < sin2 + OPENBLAS_NUM_THREADS=2 ./sblat2 < ./sblat2.dat + @$(GREP) -q FATAL SBLAT2.SUMM && cat SBLAT2.SUMM || exit 0 endif ifeq ($(BUILD_DOUBLE),1) - OPENBLAS_NUM_THREADS=2 ./xdcblat2 < din2 + OPENBLAS_NUM_THREADS=2 ./dblat2 < ./dblat2.dat + @$(GREP) -q FATAL DBLAT2.SUMM && cat DBLAT2.SUMM || exit 0 endif ifeq ($(BUILD_COMPLEX),1) - OPENBLAS_NUM_THREADS=2 ./xccblat2 < cin2 + OPENBLAS_NUM_THREADS=2 ./cblat2 < ./cblat2.dat + @$(GREP) -q FATAL CBLAT2.SUMM && cat CBLAT2.SUMM || exit 0 endif ifeq ($(BUILD_COMPLEX16),1) - OPENBLAS_NUM_THREADS=2 ./xzcblat2 < zin2 + OPENBLAS_NUM_THREADS=2 ./zblat2 < ./zblat2.dat + @$(GREP) -q FATAL ZBLAT2.SUMM && cat ZBLAT2.SUMM || exit 0 +endif endif endif endif - +ifeq ($(BUILD_BFLOAT16),1) +B3= test_sbgemm +endif ifeq ($(BUILD_SINGLE),1) -all3targets += xscblat3 +S3=sblat3 endif ifeq ($(BUILD_DOUBLE),1) -all3targets += xdcblat3 +D3=dblat3 endif ifeq ($(BUILD_COMPLEX),1) -all3targets += xccblat3 +C3=cblat3 endif ifeq ($(BUILD_COMPLEX16),1) -all3targets += xzcblat3 +Z3=zblat3 endif -all3: $(all3targets) +level3: $(B3) $(S3) $(D3) $(C3) $(Z3) + ifneq ($(CROSS), 1) -ifeq ($(USE_OPENMP), 1) + rm -f ?BLAT3.SUMM +ifeq ($(BUILD_BFLOAT16),1) + OPENBLAS_NUM_THREADS=1 OMP_NUM_THREADS=1 ./test_sbgemm > SBBLAT3.SUMM + @$(GREP) -q FATAL SBBLAT3.SUMM && cat SBBLAT3.SUMM || exit 0 +endif ifeq ($(BUILD_SINGLE),1) - OMP_NUM_THREADS=2 ./xscblat3 < sin3 + OPENBLAS_NUM_THREADS=1 OMP_NUM_THREADS=1 ./sblat3 < ./sblat3.dat + @$(GREP) -q FATAL SBLAT3.SUMM && cat SBLAT3.SUMM || exit 0 endif ifeq ($(BUILD_DOUBLE),1) - OMP_NUM_THREADS=2 ./xdcblat3 < din3 + OPENBLAS_NUM_THREADS=1 OMP_NUM_THREADS=1 ./dblat3 < ./dblat3.dat + @$(GREP) -q FATAL DBLAT3.SUMM && cat DBLAT3.SUMM || exit 0 endif ifeq ($(BUILD_COMPLEX),1) - OMP_NUM_THREADS=2 ./xccblat3 < cin3 + OPENBLAS_NUM_THREADS=1 OMP_NUM_THREADS=1 ./cblat3 < ./cblat3.dat + @$(GREP) -q FATAL CBLAT3.SUMM && cat CBLAT3.SUMM || exit 0 endif ifeq ($(BUILD_COMPLEX16),1) - OMP_NUM_THREADS=2 ./xzcblat3 < zin3 + OPENBLAS_NUM_THREADS=1 OMP_NUM_THREADS=1 ./zblat3 < ./zblat3.dat + @$(GREP) -q FATAL ZBLAT3.SUMM && cat ZBLAT3.SUMM || exit 0 +endif +ifdef SMP + rm -f ?BLAT3.SUMM +ifeq ($(USE_OPENMP), 1) +ifeq ($(BUILD_BFLOAT16),1) + OMP_NUM_THREADS=2 ./test_sbgemm > SBBLAT3.SUMM + @$(GREP) -q FATAL SBBLAT3.SUMM && cat SBBLAT3.SUMM || exit 0 endif -else ifeq ($(BUILD_SINGLE),1) - OPENBLAS_NUM_THREADS=2 ./xscblat3 < sin3 + OMP_NUM_THREADS=2 ./sblat3 < ./sblat3.dat + @$(GREP) -q FATAL SBLAT3.SUMM && cat SBLAT3.SUMM || exit 0 endif ifeq ($(BUILD_DOUBLE),1) - OPENBLAS_NUM_THREADS=2 ./xdcblat3 < din3 + OMP_NUM_THREADS=2 ./dblat3 < ./dblat3.dat + @$(GREP) -q FATAL DBLAT3.SUMM && cat DBLAT3.SUMM || exit 0 endif ifeq ($(BUILD_COMPLEX),1) - OPENBLAS_NUM_THREADS=2 ./xccblat3 < cin3 + OMP_NUM_THREADS=2 ./cblat3 < ./cblat3.dat + @$(GREP) -q FATAL CBLAT3.SUMM && cat CBLAT3.SUMM || exit 0 endif ifeq ($(BUILD_COMPLEX16),1) - OPENBLAS_NUM_THREADS=2 ./xzcblat3 < zin3 -endif -endif -endif - -all3_3m: xzcblat3_3m xccblat3_3m -ifeq ($(USE_OPENMP), 1) -ifeq ($(BUILD_SINGLE),1) - OMP_NUM_THREADS=2 ./xccblat3_3m < cin3_3m -endif -ifeq ($(BUILD_COMPLEX16),1) - OMP_NUM_THREADS=2 ./xzcblat3_3m < zin3_3m + OMP_NUM_THREADS=2 ./zblat3 < ./zblat3.dat + @$(GREP) -q FATAL ZBLAT3.SUMM && cat ZBLAT3.SUMM || exit 0 endif else +ifeq ($(BUILD_BFLOAT16),1) + OPENBLAS_NUM_THREADS=2 ./test_sbgemm > SBBLAT3.SUMM + @$(GREP) -q FATAL SBBLAT3.SUMM && cat SBBLAT3.SUMM || exit 0 +endif +ifeq ($(BUILD_SINGLE),1) + OPENBLAS_NUM_THREADS=2 ./sblat3 < ./sblat3.dat + @$(GREP) -q FATAL SBLAT3.SUMM && cat SBLAT3.SUMM || exit 0 +endif +ifeq ($(BUILD_DOUBLE),1) + OPENBLAS_NUM_THREADS=2 ./dblat3 < ./dblat3.dat + @$(GREP) -q FATAL DBLAT3.SUMM && cat DBLAT3.SUMM || exit 0 +endif ifeq ($(BUILD_COMPLEX),1) - OPENBLAS_NUM_THREADS=2 ./xccblat3_3m < cin3_3m + OPENBLAS_NUM_THREADS=2 ./cblat3 < ./cblat3.dat + @$(GREP) -q FATAL CBLAT3.SUMM && cat CBLAT3.SUMM || exit 0 endif ifeq ($(BUILD_COMPLEX16),1) - OPENBLAS_NUM_THREADS=2 ./xzcblat3_3m < zin3_3m + OPENBLAS_NUM_THREADS=2 ./zblat3 < ./zblat3.dat + @$(GREP) -q FATAL ZBLAT3.SUMM && cat ZBLAT3.SUMM || exit 0 +endif +endif +endif +endif + + +level3_3m : zblat3_3m cblat3_3m +ifneq ($(CROSS), 1) + rm -f ?BLAT3_3M.SUMM + OPENBLAS_NUM_THREADS=1 OMP_NUM_THREADS=1 ./cblat3_3m < ./cblat3_3m.dat + @$(GREP) -q FATAL CBLAT3_3M.SUMM && cat CBLAT3_3M.SUMM || exit 0 + OPENBLAS_NUM_THREADS=1 OMP_NUM_THREADS=1 ./zblat3_3m < ./zblat3_3m.dat + @$(GREP) -q FATAL ZBLAT3_3M.SUMM && cat ZBLAT3_3M.SUMM || exit 0 +ifdef SMP + rm -f ?BLAT3_3M.SUMM +ifeq ($(USE_OPENMP), 1) + OMP_NUM_THREADS=2 ./cblat3_3m < ./cblat3_3m.dat + @$(GREP) -q FATAL CBLAT3_3M.SUMM && cat CBLAT3_3M.SUMM || exit 0 + OMP_NUM_THREADS=2 ./zblat3_3m < ./zblat3_3m.dat + @$(GREP) -q FATAL ZBLAT3_3M.SUMM && cat ZBLAT3_3M.SUMM || exit 0 +else + OPENBLAS_NUM_THREADS=2 ./cblat3_3m < ./cblat3_3m.dat + @$(GREP) -q FATAL CBLAT3_3M.SUMM && cat CBLAT3_3M.SUMM || exit 0 + OPENBLAS_NUM_THREADS=2 ./zblat3_3m < ./zblat3_3m.dat + @$(GREP) -q FATAL ZBLAT3_3M.SUMM && cat ZBLAT3_3M.SUMM || exit 0 +endif endif endif -clean :: - rm -f x* - FLDFLAGS = $(FFLAGS:-fPIC=) $(LDFLAGS) + +ifeq ($(CORE), C910V) +EXTRALIB = +CEXTRALIB = +endif + ifeq ($(USE_OPENMP), 1) ifeq ($(F_COMPILER), GFORTRAN) ifeq ($(C_COMPILER), CLANG) @@ -215,54 +273,90 @@ endif endif ifeq ($(BUILD_SINGLE),1) -# Single real -xscblat1: $(stestl1o) c_sblat1.o $(TOPDIR)/$(LIBNAME) - $(FC) $(FLDFLAGS) -o xscblat1 c_sblat1.o $(stestl1o) $(LIB) $(EXTRALIB) $(CEXTRALIB) +sblat1 : sblat1.$(SUFFIX) ../$(LIBNAME) + $(FC) $(FLDFLAGS) -o sblat1 sblat1.$(SUFFIX) ../$(LIBNAME) $(EXTRALIB) $(CEXTRALIB) -xscblat2: $(stestl2o) c_sblat2.o $(TOPDIR)/$(LIBNAME) - $(FC) $(FLDFLAGS) -o xscblat2 c_sblat2.o $(stestl2o) $(LIB) $(EXTRALIB) $(CEXTRALIB) +sblat2 : sblat2.$(SUFFIX) ../$(LIBNAME) + $(FC) $(FLDFLAGS) -o sblat2 sblat2.$(SUFFIX) ../$(LIBNAME) $(EXTRALIB) $(CEXTRALIB) -xscblat3: $(stestl3o) c_sblat3.o $(TOPDIR)/$(LIBNAME) - $(FC) $(FLDFLAGS) -o xscblat3 c_sblat3.o $(stestl3o) $(LIB) $(EXTRALIB) $(CEXTRALIB) +sblat3 : sblat3.$(SUFFIX) ../$(LIBNAME) + $(FC) $(FLDFLAGS) -o sblat3 sblat3.$(SUFFIX) ../$(LIBNAME) $(EXTRALIB) $(CEXTRALIB) endif ifeq ($(BUILD_DOUBLE),1) -# Double real -xdcblat1: $(dtestl1o) c_dblat1.o $(TOPDIR)/$(LIBNAME) - $(FC) $(FLDFLAGS) -o xdcblat1 c_dblat1.o $(dtestl1o) $(LIB) $(EXTRALIB) $(CEXTRALIB) -xdcblat2: $(dtestl2o) c_dblat2.o $(TOPDIR)/$(LIBNAME) - $(FC) $(FLDFLAGS) -o xdcblat2 c_dblat2.o $(dtestl2o) $(LIB) $(EXTRALIB) $(CEXTRALIB) -xdcblat3: $(dtestl3o) c_dblat3.o $(TOPDIR)/$(LIBNAME) - $(FC) $(FLDFLAGS) -o xdcblat3 c_dblat3.o $(dtestl3o) $(LIB) $(EXTRALIB) $(CEXTRALIB) +dblat1 : dblat1.$(SUFFIX) ../$(LIBNAME) + $(FC) $(FLDFLAGS) -o dblat1 dblat1.$(SUFFIX) ../$(LIBNAME) $(EXTRALIB) $(CEXTRALIB) + +dblat2 : dblat2.$(SUFFIX) ../$(LIBNAME) + $(FC) $(FLDFLAGS) -o dblat2 dblat2.$(SUFFIX) ../$(LIBNAME) $(EXTRALIB) $(CEXTRALIB) + +dblat3 : dblat3.$(SUFFIX) ../$(LIBNAME) + $(FC) $(FLDFLAGS) -o dblat3 dblat3.$(SUFFIX) ../$(LIBNAME) $(EXTRALIB) $(CEXTRALIB) +else +dblat2: +dblat3: endif +qblat1 : qblat1.$(SUFFIX) ../$(LIBNAME) + $(FC) $(FLDFLAGS) -o qblat1 qblat1.$(SUFFIX) ../$(LIBNAME) $(EXTRALIB) $(CEXTRALIB) + ifeq ($(BUILD_COMPLEX),1) -# Single complex -xccblat1: $(ctestl1o) c_cblat1.o $(TOPDIR)/$(LIBNAME) - $(FC) $(FLDFLAGS) -o xccblat1 c_cblat1.o $(ctestl1o) $(LIB) $(EXTRALIB) $(CEXTRALIB) -xccblat2: $(ctestl2o) c_cblat2.o $(TOPDIR)/$(LIBNAME) - $(FC) $(FLDFLAGS) -o xccblat2 c_cblat2.o $(ctestl2o) $(LIB) $(EXTRALIB) $(CEXTRALIB) -xccblat3: $(ctestl3o) c_cblat3.o $(TOPDIR)/$(LIBNAME) - $(FC) $(FLDFLAGS) -o xccblat3 c_cblat3.o $(ctestl3o) $(LIB) $(EXTRALIB) $(CEXTRALIB) +cblat1 : cblat1.$(SUFFIX) ../$(LIBNAME) + $(FC) $(FLDFLAGS) -o cblat1 cblat1.$(SUFFIX) ../$(LIBNAME) $(EXTRALIB) $(CEXTRALIB) -xccblat3_3m: $(ctestl3o_3m) c_cblat3_3m.o $(TOPDIR)/$(LIBNAME) - $(FC) $(FLDFLAGS) -o xccblat3_3m c_cblat3_3m.o $(ctestl3o_3m) $(LIB) $(EXTRALIB) $(CEXTRALIB) +cblat2 : cblat2.$(SUFFIX) ../$(LIBNAME) + $(FC) $(FLDFLAGS) -o cblat2 cblat2.$(SUFFIX) ../$(LIBNAME) $(EXTRALIB) $(CEXTRALIB) + +cblat3 : cblat3.$(SUFFIX) ../$(LIBNAME) + $(FC) $(FLDFLAGS) -o cblat3 cblat3.$(SUFFIX) ../$(LIBNAME) $(EXTRALIB) $(CEXTRALIB) endif - ifeq ($(BUILD_COMPLEX16),1) -# Double complex -xzcblat1: $(ztestl1o) c_zblat1.o $(TOPDIR)/$(LIBNAME) - $(FC) $(FLDFLAGS) -o xzcblat1 c_zblat1.o $(ztestl1o) $(LIB) $(EXTRALIB) $(CEXTRALIB) -xzcblat2: $(ztestl2o) c_zblat2.o $(TOPDIR)/$(LIBNAME) - $(FC) $(FLDFLAGS) -o xzcblat2 c_zblat2.o $(ztestl2o) $(LIB) $(EXTRALIB) $(CEXTRALIB) -xzcblat3: $(ztestl3o) c_zblat3.o $(TOPDIR)/$(LIBNAME) - $(FC) $(FLDFLAGS) -o xzcblat3 c_zblat3.o $(ztestl3o) $(LIB) $(EXTRALIB) $(CEXTRALIB) +zblat1 : zblat1.$(SUFFIX) ../$(LIBNAME) + $(FC) $(FLDFLAGS) -o zblat1 zblat1.$(SUFFIX) ../$(LIBNAME) $(EXTRALIB) $(CEXTRALIB) +zblat2 : zblat2.$(SUFFIX) ../$(LIBNAME) + $(FC) $(FLDFLAGS) -o zblat2 zblat2.$(SUFFIX) ../$(LIBNAME) $(EXTRALIB) $(CEXTRALIB) -xzcblat3_3m: $(ztestl3o_3m) c_zblat3_3m.o $(TOPDIR)/$(LIBNAME) - $(FC) $(FLDFLAGS) -o xzcblat3_3m c_zblat3_3m.o $(ztestl3o_3m) $(LIB) $(EXTRALIB) $(CEXTRALIB) +zblat3 : zblat3.$(SUFFIX) ../$(LIBNAME) + $(FC) $(FLDFLAGS) -o zblat3 zblat3.$(SUFFIX) ../$(LIBNAME) $(EXTRALIB) $(CEXTRALIB) endif -include $(TOPDIR)/Makefile.tail +ifeq ($(BUILD_BFLOAT16),1) +test_sbgemm : compare_sgemm_sbgemm.c ../$(LIBNAME) + $(FC) $(FLDFLAGS) -o test_sbgemm compare_sgemm_sbgemm.c ../$(LIBNAME) $(EXTRALIB) $(CEXTRALIB) +endif + +ifeq ($(BUILD_COMPLEX),1) +cblat3_3m : cblat3_3m.$(SUFFIX) ../$(LIBNAME) + $(FC) $(FLDFLAGS) -o cblat3_3m cblat3_3m.$(SUFFIX) ../$(LIBNAME) $(EXTRALIB) $(CEXTRALIB) +endif + +ifeq ($(BUILD_COMPLEX16),1) +zblat3_3m : zblat3_3m.$(SUFFIX) ../$(LIBNAME) + $(FC) $(FLDFLAGS) -o zblat3_3m zblat3_3m.$(SUFFIX) ../$(LIBNAME) $(EXTRALIB) $(CEXTRALIB) +endif + + + +clean: + @rm -f *.$(SUFFIX) *.$(PSUFFIX) gmon.$(SUFFIX)ut *.SUMM *.cxml *.exe *.pdb *.dwf \ + sblat1 dblat1 cblat1 zblat1 \ + sblat2 dblat2 cblat2 zblat2 \ + test_sbgemm sblat3 dblat3 cblat3 zblat3 \ + sblat1p dblat1p cblat1p zblat1p \ + sblat2p dblat2p cblat2p zblat2p \ + sblat3p dblat3p cblat3p zblat3p \ + zblat3_3m zblat3_3mp \ + cblat3_3m cblat3_3mp \ + *.stackdump *.dll + +libs: + +prof: + +quick : + $(MAKE) -C $(TOPDIR) libs + +# include ../Makefile.tail