Skip to content

Commit 5b342ef

Browse files
committed
Print BLAS Vendor in CMake summary
1 parent 11e31c7 commit 5b342ef

1 file changed

Lines changed: 42 additions & 31 deletions

File tree

cmake/CollectBuildInfoVars.cmake

Lines changed: 42 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -121,21 +121,50 @@ else()
121121
set(ABACUS_ELPA_VERSION "no")
122122
endif()
123123

124+
# BLAS and FFTW libraries
124125
if(MKL_FOUND)
125-
set(ABACUS_MKL_SUPPORT "yes (version unknown)")
126-
find_path(MKL_VERSION_HEADER mkl_version.h PATHS ${MKL_INCLUDE} NO_DEFAULT_PATH)
127-
if(MKL_VERSION_HEADER)
128-
file(STRINGS "${MKL_VERSION_HEADER}" MKL_VERSION_LINE REGEX "^#define INTEL_MKL_VERSION [0-9]+")
129-
string(REGEX REPLACE "^#define INTEL_MKL_VERSION ([0-9]+)" "\\1" MKL_VER_NUM "${MKL_VERSION_LINE}")
130-
if(MKL_VER_NUM)
131-
math(EXPR MKL_MAJOR "${MKL_VER_NUM} / 10000")
132-
math(EXPR MKL_MINOR "(${MKL_VER_NUM} % 10000) / 100")
133-
math(EXPR MKL_PATCH "${MKL_VER_NUM} % 100")
134-
set(ABACUS_MKL_SUPPORT "yes (v${MKL_MAJOR}.${MKL_MINOR}.${MKL_PATCH})")
135-
endif()
126+
set(ABACUS_BLAS_VENDOR "MKL")
127+
set(ABACUS_FFTW_VERSION "Using MKL")
128+
set(ABACUS_MKL_SUPPORT "yes (version unknown)")
129+
find_path(MKL_VERSION_HEADER mkl_version.h PATHS ${MKL_INCLUDE} NO_DEFAULT_PATH)
130+
if(MKL_VERSION_HEADER)
131+
file(STRINGS "${MKL_VERSION_HEADER}" MKL_VERSION_LINE REGEX "^#define INTEL_MKL_VERSION [0-9]+")
132+
string(REGEX REPLACE "^#define INTEL_MKL_VERSION ([0-9]+)" "\\1" MKL_VER_NUM "${MKL_VERSION_LINE}")
133+
if(MKL_VER_NUM)
134+
math(EXPR MKL_MAJOR "${MKL_VER_NUM} / 10000")
135+
math(EXPR MKL_MINOR "(${MKL_VER_NUM} % 10000) / 100")
136+
math(EXPR MKL_PATCH "${MKL_VER_NUM} % 100")
137+
set(ABACUS_MKL_SUPPORT "yes (v${MKL_MAJOR}.${MKL_MINOR}.${MKL_PATCH})")
136138
endif()
139+
endif()
137140
else()
138-
set(ABACUS_MKL_SUPPORT "no")
141+
set(ABACUS_MKL_SUPPORT "no")
142+
if(USE_SW)
143+
set(ABACUS_BLAS_VENDOR "SW")
144+
set(ABACUS_FFTW_VERSION "Using SW")
145+
elseif(USE_KML)
146+
set(ABACUS_BLAS_VENDOR "KML")
147+
set(ABACUS_FFTW_VERSION "Using KML")
148+
else()
149+
set(ABACUS_BLAS_VENDOR "Generic BLAS")
150+
if(FFTW3_VERSION)
151+
set(ABACUS_FFTW_VERSION "yes (v${FFTW3_VERSION})")
152+
else()
153+
if(FFTW3_INCLUDE_DIR AND EXISTS "${FFTW3_INCLUDE_DIR}/fftw3.h")
154+
file(STRINGS "${FFTW3_INCLUDE_DIR}/fftw3.h" _fftw_ver_line
155+
REGEX "^#define[\t ]+FFTW_VERSION[\t ]+\"[^\"]+\"")
156+
if(_fftw_ver_line)
157+
string(REGEX REPLACE "^#define[\t ]+FFTW_VERSION[\t ]+\"([^\"]+)\"" "\\1"
158+
FFTW3_VERSION "${_fftw_ver_line}")
159+
set(ABACUS_FFTW_VERSION "yes (v${FFTW3_VERSION})")
160+
else()
161+
set(ABACUS_FFTW_VERSION "yes (version unknown)")
162+
endif()
163+
else()
164+
set(ABACUS_FFTW_VERSION "yes (version unknown)")
165+
endif()
166+
endif()
167+
endif()
139168
endif()
140169

141170
if(ENABLE_LIBXC AND Libxc_VERSION)
@@ -146,24 +175,6 @@ else()
146175
set(ABACUS_LIBXC_VERSION "no")
147176
endif()
148177

149-
if(NOT USE_SW AND NOT MKL_FOUND AND FFTW3_VERSION)
150-
set(ABACUS_FFTW_VERSION "yes (v${FFTW3_VERSION})")
151-
elseif(NOT USE_SW AND NOT MKL_FOUND)
152-
if(FFTW3_INCLUDE_DIR AND EXISTS "${FFTW3_INCLUDE_DIR}/fftw3.h")
153-
file(STRINGS "${FFTW3_INCLUDE_DIR}/fftw3.h" _fftw_ver_line REGEX "^#define[\t ]+FFTW_VERSION[\t ]+\"[^\"]+\"")
154-
if(_fftw_ver_line)
155-
string(REGEX REPLACE "^#define[\t ]+FFTW_VERSION[\t ]+\"([^\"]+)\"" "\\1" FFTW3_VERSION "${_fftw_ver_line}")
156-
set(ABACUS_FFTW_VERSION "yes (v${FFTW3_VERSION})")
157-
else()
158-
set(ABACUS_FFTW_VERSION "yes (version unknown)")
159-
endif()
160-
else()
161-
set(ABACUS_FFTW_VERSION "yes (version unknown)")
162-
endif()
163-
else()
164-
set(ABACUS_FFTW_VERSION "no (using MKL or SW)")
165-
endif()
166-
167178
# Accelerators
168179
if(USE_CUDA AND CUDAToolkit_VERSION)
169180
set(ABACUS_CUDA_VERSION "yes (v${CUDAToolkit_VERSION})")
@@ -383,7 +394,7 @@ message(" OpenMP Support : ${ABACUS_OPENMP_VERSION}")
383394
message(" -------------------------------------------------------------------")
384395
message(" LCAO Enabled : ${ABACUS_LCAO_ENABLED}")
385396
message(" -------------------------------------------------------------------")
386-
message(" Math Libraries : MKL = ${ABACUS_MKL_SUPPORT}")
397+
message(" Math Libraries : BLAS = ${ABACUS_BLAS_VENDOR}")
387398
message(" FFTW = ${ABACUS_FFTW_VERSION}")
388399
message(" ELPA = ${ABACUS_ELPA_VERSION}")
389400
message(" Accelerators : CUDA = ${ABACUS_CUDA_VERSION}")

0 commit comments

Comments
 (0)