Adapt for supporting only a subset of variable types
This commit is contained in:
parent
0f7d73ff6d
commit
886a8e3190
|
@ -14,7 +14,7 @@ foreach (GEMM_DEFINE ${GEMM_DEFINES})
|
||||||
endif ()
|
endif ()
|
||||||
endforeach ()
|
endforeach ()
|
||||||
|
|
||||||
if (DEFINED BUILD_COMPLEX16 AND NOT DEFINED BUILD_DOUBLE)
|
if ( BUILD_COMPLEX16 AND NOT BUILD_DOUBLE)
|
||||||
foreach (GEMM_DEFINE ${GEMM_DEFINES})
|
foreach (GEMM_DEFINE ${GEMM_DEFINES})
|
||||||
string(TOLOWER ${GEMM_DEFINE} GEMM_DEFINE_LC)
|
string(TOLOWER ${GEMM_DEFINE} GEMM_DEFINE_LC)
|
||||||
GenerateNamedObjects("gemm.c" "${GEMM_DEFINE}" "gemm_${GEMM_DEFINE_LC}" 0 "" "" false "DOUBLE")
|
GenerateNamedObjects("gemm.c" "${GEMM_DEFINE}" "gemm_${GEMM_DEFINE_LC}" 0 "" "" false "DOUBLE")
|
||||||
|
@ -23,7 +23,7 @@ foreach (GEMM_DEFINE ${GEMM_DEFINES})
|
||||||
endif()
|
endif()
|
||||||
endforeach()
|
endforeach()
|
||||||
endif()
|
endif()
|
||||||
if (DEFINED BUILD_COMPLEX AND NOT DEFINED BUILD_SINGLE)
|
if ( BUILD_COMPLEX AND NOT BUILD_SINGLE)
|
||||||
foreach (GEMM_DEFINE ${GEMM_DEFINES})
|
foreach (GEMM_DEFINE ${GEMM_DEFINES})
|
||||||
string(TOLOWER ${GEMM_DEFINE} GEMM_DEFINE_LC)
|
string(TOLOWER ${GEMM_DEFINE} GEMM_DEFINE_LC)
|
||||||
GenerateNamedObjects("gemm.c" "${GEMM_DEFINE}" "gemm_${GEMM_DEFINE_LC}" 0 "" "" false "SINGLE")
|
GenerateNamedObjects("gemm.c" "${GEMM_DEFINE}" "gemm_${GEMM_DEFINE_LC}" 0 "" "" false "SINGLE")
|
||||||
|
@ -119,7 +119,7 @@ foreach (float_type ${FLOAT_TYPES})
|
||||||
endif ()
|
endif ()
|
||||||
endforeach ()
|
endforeach ()
|
||||||
|
|
||||||
if (DEFINED BUILD_COMPLEX16 AND NOT DEFINED BUILD_DOUBLE)
|
if ( BUILD_COMPLEX16 AND NOT BUILD_DOUBLE)
|
||||||
foreach (gemm_define ${GEMM_COMPLEX_DEFINES})
|
foreach (gemm_define ${GEMM_COMPLEX_DEFINES})
|
||||||
string(TOLOWER ${gemm_define} gemm_define_LC)
|
string(TOLOWER ${gemm_define} gemm_define_LC)
|
||||||
if (USE_THREAD AND NOT USE_SIMPLE_THREADED_LEVEL3)
|
if (USE_THREAD AND NOT USE_SIMPLE_THREADED_LEVEL3)
|
||||||
|
@ -127,7 +127,7 @@ foreach (float_type ${FLOAT_TYPES})
|
||||||
endif()
|
endif()
|
||||||
endforeach()
|
endforeach()
|
||||||
endif ()
|
endif ()
|
||||||
if (DEFINED BUILD_COMPLEX AND NOT DEFINED BUILD_SINGLE)
|
if ( BUILD_COMPLEX AND NOT BUILD_SINGLE)
|
||||||
foreach (gemm_define ${GEMM_COMPLEX_DEFINES})
|
foreach (gemm_define ${GEMM_COMPLEX_DEFINES})
|
||||||
string(TOLOWER ${gemm_define} gemm_define_LC)
|
string(TOLOWER ${gemm_define} gemm_define_LC)
|
||||||
if (USE_THREAD AND NOT USE_SIMPLE_THREADED_LEVEL3)
|
if (USE_THREAD AND NOT USE_SIMPLE_THREADED_LEVEL3)
|
||||||
|
|
|
@ -287,6 +287,60 @@ HPLOBJS += dgemm_thread_nn.$(SUFFIX) dgemm_thread_nt.$(SUFFIX) \
|
||||||
dgemm_thread_tn.$(SUFFIX) dgemm_thread_tt.$(SUFFIX)
|
dgemm_thread_tn.$(SUFFIX) dgemm_thread_tt.$(SUFFIX)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
ifneq ($(BUILD_SINGLE),1)
|
||||||
|
SBLASOBJS=
|
||||||
|
ifeq ($(BUILD_DOUBLE),1)
|
||||||
|
SBLASOBJS= \
|
||||||
|
strsm_LNUU.$(SUFFIX) strsm_LNUN.$(SUFFIX) strsm_LNLU.$(SUFFIX) strsm_LNLN.$(SUFFIX) \
|
||||||
|
strsm_LTUU.$(SUFFIX) strsm_LTUN.$(SUFFIX) strsm_LTLU.$(SUFFIX) strsm_LTLN.$(SUFFIX) \
|
||||||
|
strsm_RNUU.$(SUFFIX) strsm_RNUN.$(SUFFIX) strsm_RNLU.$(SUFFIX) strsm_RNLN.$(SUFFIX) \
|
||||||
|
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
|
||||||
|
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
|
||||||
|
SBLASOBJS += sgemm_thread_nn.$(SUFFIX) sgemm_thread_nt.$(SUFFIX) sgemm_thread_tn.$(SUFFIX) sgemm_thread_tt.$(SUFFIX)
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
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
|
||||||
|
DBLASOBJS += dgemm_thread_nn.$(SUFFIX) dgemm_thread_nt.$(SUFFIX) dgemm_thread_tn.$(SUFFIX) dgemm_thread_tt.$(SUFFIX)
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
ifneq ($(BUILD_COMPLEX),1)
|
||||||
|
CBLASOBJS=
|
||||||
|
ifeq ($(BUILD_COMPLEX16),1)
|
||||||
|
CBLASOBJS= \
|
||||||
|
cherk_UN.$(SUFFIX) cherk_UC.$(SUFFIX) cherk_LN.$(SUFFIX) cherk_LC.$(SUFFIX) \
|
||||||
|
cherk_kernel_UN.$(SUFFIX) cherk_kernel_UC.$(SUFFIX) \
|
||||||
|
cherk_kernel_LN.$(SUFFIX) cherk_kernel_LC.$(SUFFIX) \
|
||||||
|
ctrsm_LNUU.$(SUFFIX) ctrsm_LNUN.$(SUFFIX) ctrsm_LNLU.$(SUFFIX) ctrsm_LNLN.$(SUFFIX) \
|
||||||
|
ctrsm_LTUU.$(SUFFIX) ctrsm_LTUN.$(SUFFIX) ctrsm_LTLU.$(SUFFIX) ctrsm_LTLN.$(SUFFIX) \
|
||||||
|
ctrsm_LRUU.$(SUFFIX) ctrsm_LRUN.$(SUFFIX) ctrsm_LRLU.$(SUFFIX) ctrsm_LRLN.$(SUFFIX) \
|
||||||
|
ctrsm_LCUU.$(SUFFIX) ctrsm_LCUN.$(SUFFIX) ctrsm_LCLU.$(SUFFIX) ctrsm_LCLN.$(SUFFIX) \
|
||||||
|
ctrsm_RNUU.$(SUFFIX) ctrsm_RNUN.$(SUFFIX) ctrsm_RNLU.$(SUFFIX) ctrsm_RNLN.$(SUFFIX) \
|
||||||
|
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
|
||||||
|
CBLASOBJS += cherk_thread_UN.$(SUFFIX) cherk_thread_UC.$(SUFFIX) cherk_thread_LN.$(SUFFIX) cherk_thread_LC.$(SUFFIX)
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
ifneq ($(BUILD_COMPLEX16),1)
|
||||||
|
ZBLASOBJS=
|
||||||
|
endif
|
||||||
|
|
||||||
all ::
|
all ::
|
||||||
|
|
||||||
shgemm_nn.$(SUFFIX) : gemm.c level3.c ../../param.h
|
shgemm_nn.$(SUFFIX) : gemm.c level3.c ../../param.h
|
||||||
|
|
|
@ -56,12 +56,12 @@ int CNAME(int mode, blas_arg_t *arg, BLASLONG *range_m, BLASLONG *range_n, int (
|
||||||
if (!(mode & BLAS_COMPLEX)) {
|
if (!(mode & BLAS_COMPLEX)) {
|
||||||
|
|
||||||
switch (mode & BLAS_PREC) {
|
switch (mode & BLAS_PREC) {
|
||||||
#ifdef BUILD_SINGLE
|
#if defined(BUILD_SINGLE) || defined(BUILD_COMPLEX)
|
||||||
case BLAS_SINGLE:
|
case BLAS_SINGLE:
|
||||||
mask = SGEMM_UNROLL_MN - 1;
|
mask = SGEMM_UNROLL_MN - 1;
|
||||||
break;
|
break;
|
||||||
#endif
|
#endif
|
||||||
#ifdef BUILD_DOUBLE
|
#if defined(BUILD_DOUBLE) || defined(BUILD_COMPLEX16)
|
||||||
case BLAS_DOUBLE:
|
case BLAS_DOUBLE:
|
||||||
mask = DGEMM_UNROLL_MN - 1;
|
mask = DGEMM_UNROLL_MN - 1;
|
||||||
break;
|
break;
|
||||||
|
|
Loading…
Reference in New Issue