diff --git a/common_macro.h b/common_macro.h index 745643fa89..4051cb3794 100644 --- a/common_macro.h +++ b/common_macro.h @@ -3159,6 +3159,8 @@ typedef struct { #define NEG_TCOPY ZNEG_TCOPY #define LARF_L ZLARF_L #define LARF_R ZLARF_R +#define LAED3_SINGLE dlaed3_single +#define LAED3_PARALLEL dlaed3_parallel #else #define GETF2 CGETF2 #define GETRF CGETRF @@ -3180,6 +3182,8 @@ typedef struct { #define NEG_TCOPY CNEG_TCOPY #define LARF_L CLARF_L #define LARF_R CLARF_R +#define LAED3_SINGLE slaed3_single +#define LAED3_PARALLEL slaed3_parallel #endif #endif diff --git a/interface/Makefile b/interface/Makefile index 83a894b125..2b6b60c142 100644 --- a/interface/Makefile +++ b/interface/Makefile @@ -530,8 +530,8 @@ ifneq ($(NO_LAPACK), 1) SBLASOBJS += $(SLAPACKOBJS) DBLASOBJS += $(DLAPACKOBJS) #QBLASOBJS += $(QLAPACKOBJS) -CBLASOBJS += $(CLAPACKOBJS) -ZBLASOBJS += $(ZLAPACKOBJS) +CBLASOBJS += $(CLAPACKOBJS) slaed3.$(SUFFIX) +ZBLASOBJS += $(ZLAPACKOBJS) dlaed3.$(SUFFIX) #XBLASOBJS += $(XLAPACKOBJS) endif diff --git a/lapack/laed3/Makefile b/lapack/laed3/Makefile index 9fa75613a7..0ad584e62f 100644 --- a/lapack/laed3/Makefile +++ b/lapack/laed3/Makefile @@ -9,10 +9,10 @@ SBLASOBJS += slaed3_parallel.$(SUFFIX) DBLASOBJS += dlaed3_parallel.$(SUFFIX) endif -ifeq "$(or $(BUILD_SINGLE),$(BUILD_DOUBLE))" "" +ifeq "$(or $(BUILD_SINGLE),$(BUILD_COMPLEX))" "" SBLASOBJS= endif -ifneq ($(BUILD_DOUBLE),1) +ifeq "$(or $(BUILD_DOUBLE),$(BUILD_COMPLEX16))" "" DBLASOBJS= endif diff --git a/test/Makefile b/test/Makefile index 8b69976f76..f653b70b13 100644 --- a/test/Makefile +++ b/test/Makefile @@ -246,15 +246,19 @@ endif ifeq ($(BUILD_COMPLEX),1) ifeq ($(SUPPORT_GEMM3M),1) C3=cblat3 cblat3_3m +C3M=cblat3_3m else C3=cblat3 +C3M= endif endif ifeq ($(BUILD_COMPLEX16),1) ifeq ($(SUPPORT_GEMM3M),1) Z3=zblat3 zblat3_3m +Z3M=zblat3_3m else Z3=zblat3 +Z3M= endif endif @@ -342,28 +346,40 @@ endif endif -level3_3m: zblat3_3m cblat3_3m +level3_3m: $(C3M) $(Z3M) ifneq ($(CROSS), 1) rm -f ?BLAT3_3M.SUMM +ifeq ($(BUILD_COMPLEX),1) 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 +endif +ifeq ($(BUILD_COMPLEX16),1) 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 +endif ifdef SMP rm -f ?BLAT3_3M.SUMM ifeq ($(USE_OPENMP), 1) +ifeq ($(BUILD_COMPLEX),1) OMP_NUM_THREADS=2 ./cblat3_3m < ./cblat3_3m.dat @$(GREP) -q FATAL CBLAT3_3M.SUMM && cat CBLAT3_3M.SUMM || exit 0 +endif +ifeq ($(BUILD_COMPLEX16),1) OMP_NUM_THREADS=2 ./zblat3_3m < ./zblat3_3m.dat @$(GREP) -q FATAL ZBLAT3_3M.SUMM && cat ZBLAT3_3M.SUMM || exit 0 +endif else +ifeq ($(BUILD_COMPLEX),1) OPENBLAS_NUM_THREADS=2 ./cblat3_3m < ./cblat3_3m.dat @$(GREP) -q FATAL CBLAT3_3M.SUMM && cat CBLAT3_3M.SUMM || exit 0 +endif +ifeq ($(BUILD_COMPLEX16),1) OPENBLAS_NUM_THREADS=2 ./zblat3_3m < ./zblat3_3m.dat @$(GREP) -q FATAL ZBLAT3_3M.SUMM && cat ZBLAT3_3M.SUMM || exit 0 endif endif endif +endif diff --git a/utest/test_extensions/common.c b/utest/test_extensions/common.c index a5d3196aaf..d2f43e1a8a 100644 --- a/utest/test_extensions/common.c +++ b/utest/test_extensions/common.c @@ -50,6 +50,7 @@ void drand_generate(double *alpha, blasint n) alpha[i] = (double)rand() / (double)RAND_MAX; } +#if defined(BUILD_SINGLE) || defined(BUILD_COMPLEX) /** * Find difference between two rectangle matrix * return norm of differences @@ -76,7 +77,8 @@ float smatrix_difference(float *a, float *b, blasint cols, blasint rows, blasint } return norm/(float)(rows); } - +#endif +#if defined(BUILD_DOUBLE) || defined(BUILD_COMPLEX16) double dmatrix_difference(double *a, double *b, blasint cols, blasint rows, blasint ld) { blasint i = 0; @@ -99,7 +101,7 @@ double dmatrix_difference(double *a, double *b, blasint cols, blasint rows, blas } return norm/(double)(rows); } - +#endif /** * Complex conjugate operation for vector *