|
|
|
@ -14,31 +14,6 @@
|
|
|
|
|
#
|
|
|
|
|
|
|
|
|
|
set(CBLAS_FOUND OFF)
|
|
|
|
|
set(LAPACK_FOUND OFF)
|
|
|
|
|
|
|
|
|
|
macro(find_lapack)
|
|
|
|
|
## Find clapack
|
|
|
|
|
set(CLAPACK_ROOT $ENV{CLAPACK_ROOT} CACHE PATH "Folder contain clapack")
|
|
|
|
|
find_path(CLAPACK_INC_DIR NAMES clapack.h PATHS
|
|
|
|
|
${CLAPACK_ROOT}/include)
|
|
|
|
|
find_path(CLAPACK_F2C_INC_DIR NAMES f2c.h PATHS
|
|
|
|
|
${CLAPACK_ROOT}/include)
|
|
|
|
|
find_library(CLAPACK_F2C_LIB NAMES f2c PATHS
|
|
|
|
|
${CLAPACK_ROOT}/lib)
|
|
|
|
|
find_library(CLAPACK_CBLASWR_LIB NAMES cblaswr PATHS
|
|
|
|
|
${CLAPACK_ROOT}/lib)
|
|
|
|
|
find_library(CLAPACK_CLAPACK_LIB NAMES clapack PATHS
|
|
|
|
|
${CLAPACK_ROOT}/lib)
|
|
|
|
|
if(CLAPACK_INC_DIR AND CLAPACK_F2C_INC_DIR AND CLAPACK_F2C_LIB AND
|
|
|
|
|
CLAPACK_CBLASWR_LIB AND CLAPACK_CLAPACK_LIB AND NOT LAPACK_FOUND)
|
|
|
|
|
set(LAPACK_PROVIDER CLAPACK)
|
|
|
|
|
set(LAPACK_INC_DIR ${CLAPACK_INC_DIR})
|
|
|
|
|
set(LAPACK_LIBRARIES ${CLAPACK_F2C_LIB} ${CLAPACK_CBLASWR_LIB} ${CLAPACK_CLAPACK_LIB})
|
|
|
|
|
add_definitions(-DPADDLE_USE_CLAPACK)
|
|
|
|
|
message(STATUS "Found CLAPACK (include: ${LAPACK_INC_DIR}, library: ${LAPACK_LIBRARIES})")
|
|
|
|
|
set(LAPACK_FOUND ON)
|
|
|
|
|
endif()
|
|
|
|
|
endmacro()
|
|
|
|
|
|
|
|
|
|
## Find MKL First.
|
|
|
|
|
set(INTEL_ROOT "/opt/intel" CACHE PATH "Folder contains intel libs")
|
|
|
|
@ -69,11 +44,8 @@ if(MKL_INC_DIR AND MKL_CORE_LIB AND MKL_SEQUENTIAL_LIB AND MKL_INTEL_LP64)
|
|
|
|
|
message(STATUS "Found MKL (include: ${CBLAS_INC_DIR}, library: ${CBLAS_LIBRARIES})")
|
|
|
|
|
set(CBLAS_FOUND ON)
|
|
|
|
|
if(${MKL_LAPACK_INC_DIR})
|
|
|
|
|
set(LAPACK_INC_DIR ${MKL_LAPACK_INC_DIR})
|
|
|
|
|
add_definitions(-DPADDLE_USE_LAPACK)
|
|
|
|
|
message(STATUS "Found lapack in MKL (include: ${MKL_LAPACK_INC_DIR})")
|
|
|
|
|
set(LAPACK_FOUND ON)
|
|
|
|
|
else()
|
|
|
|
|
find_lapack()
|
|
|
|
|
endif()
|
|
|
|
|
return() # return file.
|
|
|
|
|
endif()
|
|
|
|
@ -108,11 +80,8 @@ if(ATLAS_INC_DIR AND ATLAS_CBLAS_LIB AND ATLAS_LIB AND NOT CBLAS_FOUND)
|
|
|
|
|
message(STATUS "Found ATLAS (include: ${CBLAS_INC_DIR}, library: ${CBLAS_LIBRARIES})")
|
|
|
|
|
set(CBLAS_FOUND ON)
|
|
|
|
|
if(ATLAS_CLAPACK_INC_DIR)
|
|
|
|
|
set(LAPACK_INC_DIR ${ATLAS_CLAPACK_INC_DIR})
|
|
|
|
|
add_definitions(-DPADDLE_USE_LAPACK)
|
|
|
|
|
message(STATUS "Found lapack in ATLAS (include: ${ATLAS_CLAPACK_INC_DIR})")
|
|
|
|
|
set(LAPACK_FOUND ON)
|
|
|
|
|
else()
|
|
|
|
|
find_lapack()
|
|
|
|
|
endif()
|
|
|
|
|
return()
|
|
|
|
|
endif()
|
|
|
|
@ -145,11 +114,8 @@ if(OPENBLAS_INC_DIR AND OPENBLAS_LIB)
|
|
|
|
|
message(STATUS "Found OpenBLAS (include: ${CBLAS_INC_DIR}, library: ${CBLAS_LIBRARIES})")
|
|
|
|
|
set(CBLAS_FOUND ON)
|
|
|
|
|
if(OPENBLAS_LAPACKE_INC_DIR)
|
|
|
|
|
set(LAPACK_INC_DIR ${OPENBLAS_LAPACKE_INC_DIR})
|
|
|
|
|
add_definitions(-DPADDLE_USE_LAPACK)
|
|
|
|
|
message(STATUS "Found lapack in OpenBLAS (include: ${OPENBLAS_LAPACKE_INC_DIR})")
|
|
|
|
|
set(LAPACK_FOUND ON)
|
|
|
|
|
else()
|
|
|
|
|
find_lapack()
|
|
|
|
|
endif()
|
|
|
|
|
return()
|
|
|
|
|
endif()
|
|
|
|
|