Skip to content

Commit dc11acd

Browse files
committed
Print BLAS Vendor in CMake summary
1 parent a2e944a commit dc11acd

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
@@ -135,21 +135,50 @@ else()
135135
set(ABACUS_ELPA_VERSION "no")
136136
endif()
137137

138+
# BLAS and FFTW libraries
138139
if(MKL_FOUND)
139-
set(ABACUS_MKL_SUPPORT "yes (version unknown)")
140-
find_path(MKL_VERSION_HEADER mkl_version.h PATHS ${MKL_INCLUDE} NO_DEFAULT_PATH)
141-
if(MKL_VERSION_HEADER)
142-
file(STRINGS "${MKL_VERSION_HEADER}" MKL_VERSION_LINE REGEX "^#define INTEL_MKL_VERSION [0-9]+")
143-
string(REGEX REPLACE "^#define INTEL_MKL_VERSION ([0-9]+)" "\\1" MKL_VER_NUM "${MKL_VERSION_LINE}")
144-
if(MKL_VER_NUM)
145-
math(EXPR MKL_MAJOR "${MKL_VER_NUM} / 10000")
146-
math(EXPR MKL_MINOR "(${MKL_VER_NUM} % 10000) / 100")
147-
math(EXPR MKL_PATCH "${MKL_VER_NUM} % 100")
148-
set(ABACUS_MKL_SUPPORT "yes (v${MKL_MAJOR}.${MKL_MINOR}.${MKL_PATCH})")
149-
endif()
140+
set(ABACUS_BLAS_VENDOR "MKL")
141+
set(ABACUS_FFTW_VERSION "Using MKL")
142+
set(ABACUS_MKL_SUPPORT "yes (version unknown)")
143+
find_path(MKL_VERSION_HEADER mkl_version.h PATHS ${MKL_INCLUDE} NO_DEFAULT_PATH)
144+
if(MKL_VERSION_HEADER)
145+
file(STRINGS "${MKL_VERSION_HEADER}" MKL_VERSION_LINE REGEX "^#define INTEL_MKL_VERSION [0-9]+")
146+
string(REGEX REPLACE "^#define INTEL_MKL_VERSION ([0-9]+)" "\\1" MKL_VER_NUM "${MKL_VERSION_LINE}")
147+
if(MKL_VER_NUM)
148+
math(EXPR MKL_MAJOR "${MKL_VER_NUM} / 10000")
149+
math(EXPR MKL_MINOR "(${MKL_VER_NUM} % 10000) / 100")
150+
math(EXPR MKL_PATCH "${MKL_VER_NUM} % 100")
151+
set(ABACUS_MKL_SUPPORT "yes (v${MKL_MAJOR}.${MKL_MINOR}.${MKL_PATCH})")
150152
endif()
153+
endif()
151154
else()
152-
set(ABACUS_MKL_SUPPORT "no")
155+
set(ABACUS_MKL_SUPPORT "no")
156+
if(USE_SW)
157+
set(ABACUS_BLAS_VENDOR "SW")
158+
set(ABACUS_FFTW_VERSION "Using SW")
159+
elseif(USE_KML)
160+
set(ABACUS_BLAS_VENDOR "KML")
161+
set(ABACUS_FFTW_VERSION "Using KML")
162+
else()
163+
set(ABACUS_BLAS_VENDOR "Generic BLAS")
164+
if(FFTW3_VERSION)
165+
set(ABACUS_FFTW_VERSION "yes (v${FFTW3_VERSION})")
166+
else()
167+
if(FFTW3_INCLUDE_DIR AND EXISTS "${FFTW3_INCLUDE_DIR}/fftw3.h")
168+
file(STRINGS "${FFTW3_INCLUDE_DIR}/fftw3.h" _fftw_ver_line
169+
REGEX "^#define[\t ]+FFTW_VERSION[\t ]+\"[^\"]+\"")
170+
if(_fftw_ver_line)
171+
string(REGEX REPLACE "^#define[\t ]+FFTW_VERSION[\t ]+\"([^\"]+)\"" "\\1"
172+
FFTW3_VERSION "${_fftw_ver_line}")
173+
set(ABACUS_FFTW_VERSION "yes (v${FFTW3_VERSION})")
174+
else()
175+
set(ABACUS_FFTW_VERSION "yes (version unknown)")
176+
endif()
177+
else()
178+
set(ABACUS_FFTW_VERSION "yes (version unknown)")
179+
endif()
180+
endif()
181+
endif()
153182
endif()
154183

155184
if(ENABLE_LIBXC AND Libxc_VERSION)
@@ -160,24 +189,6 @@ else()
160189
set(ABACUS_LIBXC_VERSION "no")
161190
endif()
162191

163-
if(NOT USE_SW AND NOT MKL_FOUND AND FFTW3_VERSION)
164-
set(ABACUS_FFTW_VERSION "yes (v${FFTW3_VERSION})")
165-
elseif(NOT USE_SW AND NOT MKL_FOUND)
166-
if(FFTW3_INCLUDE_DIR AND EXISTS "${FFTW3_INCLUDE_DIR}/fftw3.h")
167-
file(STRINGS "${FFTW3_INCLUDE_DIR}/fftw3.h" _fftw_ver_line REGEX "^#define[\t ]+FFTW_VERSION[\t ]+\"[^\"]+\"")
168-
if(_fftw_ver_line)
169-
string(REGEX REPLACE "^#define[\t ]+FFTW_VERSION[\t ]+\"([^\"]+)\"" "\\1" FFTW3_VERSION "${_fftw_ver_line}")
170-
set(ABACUS_FFTW_VERSION "yes (v${FFTW3_VERSION})")
171-
else()
172-
set(ABACUS_FFTW_VERSION "yes (version unknown)")
173-
endif()
174-
else()
175-
set(ABACUS_FFTW_VERSION "yes (version unknown)")
176-
endif()
177-
else()
178-
set(ABACUS_FFTW_VERSION "no (using MKL or SW)")
179-
endif()
180-
181192
# Accelerators
182193
if(USE_CUDA AND CUDAToolkit_VERSION)
183194
set(ABACUS_CUDA_VERSION "yes (v${CUDAToolkit_VERSION})")
@@ -397,7 +408,7 @@ message(" OpenMP Support : ${ABACUS_OPENMP_VERSION}")
397408
message(" -------------------------------------------------------------------")
398409
message(" LCAO Enabled : ${ABACUS_LCAO_ENABLED}")
399410
message(" -------------------------------------------------------------------")
400-
message(" Math Libraries : MKL = ${ABACUS_MKL_SUPPORT}")
411+
message(" Math Libraries : BLAS = ${ABACUS_BLAS_VENDOR}")
401412
message(" FFTW = ${ABACUS_FFTW_VERSION}")
402413
message(" ELPA = ${ABACUS_ELPA_VERSION}")
403414
message(" Accelerators : CUDA = ${ABACUS_CUDA_VERSION}")

0 commit comments

Comments
 (0)