Mentions légales du service
Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
morse_cmake
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Deploy
Releases
Container Registry
Model registry
Monitor
Incidents
Service Desk
Analyze
Value stream analytics
Contributor analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
solverstack
morse_cmake
Compare revisions
b195f3b4d00be3e191e4f7feef7a7702e2b5a52d to fe776ca3e8f992d91fa2c597f4ad12c8358a48a6
Compare revisions
Changes are shown as if the
source
revision was being merged into the
target
revision.
Learn more about comparing revisions.
Source
solverstack/morse_cmake
Select target project
No results found
fe776ca3e8f992d91fa2c597f4ad12c8358a48a6
Select Git revision
Branches
ci
feature/prec_xd_xz
master
Swap
Target
solverstack/morse_cmake
Select target project
solverstack/morse_cmake
gmarait/morse_cmake
rboucher/morse_cmake
mkuhn/morse_cmake
lvilleve/morse_cmake
tmijieux/morse_cmake
tcojean/morse_cmake
thibault/morse_cmake
vperrier/morse_cmake
tdelarue/morse_cmake
ekorkmaz/morse_cmake
11 results
b195f3b4d00be3e191e4f7feef7a7702e2b5a52d
Select Git revision
Branches
ci
feature/prec_xd_xz
master
Show changes
Only incoming changes from source
Include changes to target since source was created
Compare
Commits on Source (1)
provide new variables BLAS/LAPACK_LIBRARIES_SEQ/PAR to replace FindBLASEXT and Find LAPACKEXT
· fe776ca3
PRUVOST Florent
authored
6 years ago
fe776ca3
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
modules/find/FindBLAS.cmake
+62
-9
62 additions, 9 deletions
modules/find/FindBLAS.cmake
modules/find/FindLAPACK.cmake
+22
-1
22 additions, 1 deletion
modules/find/FindLAPACK.cmake
with
84 additions
and
10 deletions
modules/find/FindBLAS.cmake
View file @
fe776ca3
...
...
@@ -22,8 +22,12 @@
# and -L).
# BLAS_CFLAGS_OTHER - list of required compiler flags (excluding -I).
# BLAS_INCLUDE_DIRS - include directories
# BLAS_LIBRARIES - list of libraries (using full path name) to
# link against to use BLAS
# BLAS_LIBRARIES - list of libraries (using full path name) to
# link against to use BLAS, sequential or multithreaded version depending on BLA_VENDOR
# BLAS_LIBRARIES_SEQ - list of libraries (using full path name) to
# link against to use BLAS, sequential version (Intel MKL)
# BLAS_LIBRARIES_PAR - list of libraries (using full path name) to
# link against to use BLAS, multithreaded version (Intel MKL)
# BLAS95_LIBRARIES - list of libraries (using full path name)
# to link against to use BLAS95 interface
# BLAS95_FOUND - set to true if a library implementing the BLAS f95 interface
...
...
@@ -365,14 +369,21 @@ if( PKG_CONFIG_EXECUTABLE AND NOT BLAS_GIVEN_BY_USER )
endif
()
# try different blas
if
(
BLA_VENDOR STREQUAL
"Intel10_64lp"
)
pkg_search_module
(
BLAS mkl-
${
MKL_STR_BLA_STATIC
}
-lp64-seq
)
if
(
BLAS_FOUND
)
set
(
BLAS_VENDOR_FOUND
"Intel MKL Sequential"
)
set
(
BLAS_LIBRARIES_SEQ
"
${
BLAS_LIBRARIES
}
"
)
endif
()
pkg_search_module
(
BLAS mkl-
${
MKL_STR_BLA_STATIC
}
-lp64-iomp
)
if
(
BLAS_FOUND
)
set
(
BLAS_VENDOR_FOUND
"Intel MKL"
)
set
(
BLAS_VENDOR_FOUND
"Intel MKL Multithreaded"
)
set
(
BLAS_LIBRARIES_PAR
"
${
BLAS_LIBRARIES
}
"
)
endif
()
elseif
(
BLA_VENDOR STREQUAL
"Intel10_64lp_seq"
)
pkg_search_module
(
BLAS mkl-
${
MKL_STR_BLA_STATIC
}
-lp64-seq
)
if
(
BLAS_FOUND
)
set
(
BLAS_VENDOR_FOUND
"Intel MKL"
)
set
(
BLAS_LIBRARIES_SEQ
"
${
BLAS_LIBRARIES
}
"
)
endif
()
elseif
(
BLA_VENDOR STREQUAL
"Open"
)
pkg_search_module
(
BLAS openblas
)
...
...
@@ -386,9 +397,15 @@ if( PKG_CONFIG_EXECUTABLE AND NOT BLAS_GIVEN_BY_USER )
endif
()
else
()
if
(
NOT BLAS_FOUND
)
pkg_search_module
(
BLAS mkl-
${
MKL_STR_BLA_STATIC
}
-lp64-iomp
)
if
(
BLAS_FOUND
)
set
(
BLAS_VENDOR_FOUND
"Intel MKL Multithreaded"
)
set
(
BLAS_LIBRARIES_PAR
"
${
BLAS_LIBRARIES
}
"
)
endif
()
pkg_search_module
(
BLAS mkl-
${
MKL_STR_BLA_STATIC
}
-lp64-seq
)
if
(
BLAS_FOUND
)
set
(
BLAS_VENDOR_FOUND
"Intel MKL"
)
set
(
BLAS_VENDOR_FOUND
"Intel MKL Sequential"
)
set
(
BLAS_LIBRARIES_SEQ
"
${
BLAS_LIBRARIES
}
"
)
endif
()
endif
()
if
(
NOT BLAS_FOUND
)
...
...
@@ -653,6 +670,10 @@ if( (NOT BLAS_FOUND_WITH_PKGCONFIG) OR BLAS_GIVEN_BY_USER )
list
(
APPEND BLAS_SEARCH_LIBS_WIN_THREAD
"libguide40 mkl_intel_thread
${
BLAS_mkl_DLL_SUFFIX
}
"
)
# mkl >= 10.3
# sequential version
list
(
APPEND BLAS_SEARCH_LIBS_WIN_THREAD
"mkl_sequential
${
BLAS_mkl_DLL_SUFFIX
}
"
)
# multithreaded version
list
(
APPEND BLAS_SEARCH_LIBS_WIN_THREAD
"libiomp5md mkl_intel_thread
${
BLAS_mkl_DLL_SUFFIX
}
"
)
endif
()
...
...
@@ -674,6 +695,10 @@ if( (NOT BLAS_FOUND_WITH_PKGCONFIG) OR BLAS_GIVEN_BY_USER )
list
(
APPEND BLAS_SEARCH_LIBS
"mkl_blas95 mkl_intel_lp64 mkl_intel_thread mkl_core guide"
)
# mkl >= 10.3
# sequential version
list
(
APPEND BLAS_SEARCH_LIBS
"mkl_intel_lp64 mkl_sequential mkl_core"
)
# multithreaded version
if
(
CMAKE_C_COMPILER_ID STREQUAL
"Intel"
)
list
(
APPEND BLAS_SEARCH_LIBS
"mkl_blas95_lp64 mkl_intel_lp64 mkl_intel_thread mkl_core"
)
...
...
@@ -721,6 +746,10 @@ if( (NOT BLAS_FOUND_WITH_PKGCONFIG) OR BLAS_GIVEN_BY_USER )
list
(
APPEND BLAS_SEARCH_LIBS_WIN_THREAD
"libguide40 mkl_intel_thread
${
BLAS_mkl_DLL_SUFFIX
}
"
)
# mkl >= 10.3
# sequential version
list
(
APPEND BLAS_SEARCH_LIBS_WIN_THREAD
"mkl_sequential
${
BLAS_mkl_DLL_SUFFIX
}
"
)
# multithreaded version
list
(
APPEND BLAS_SEARCH_LIBS_WIN_THREAD
"libiomp5md mkl_intel_thread
${
BLAS_mkl_DLL_SUFFIX
}
"
)
endif
()
...
...
@@ -746,6 +775,10 @@ if( (NOT BLAS_FOUND_WITH_PKGCONFIG) OR BLAS_GIVEN_BY_USER )
list
(
APPEND BLAS_SEARCH_LIBS
"mkl_intel_lp64 mkl_intel_thread mkl_core guide"
)
# mkl >= 10.3
# sequential version
list
(
APPEND BLAS_SEARCH_LIBS
"mkl_intel_lp64 mkl_sequential mkl_core"
)
# multithreaded version
if
(
CMAKE_C_COMPILER_ID STREQUAL
"Intel"
)
list
(
APPEND BLAS_SEARCH_LIBS
"mkl_intel_lp64 mkl_intel_thread mkl_core"
)
...
...
@@ -762,7 +795,7 @@ if( (NOT BLAS_FOUND_WITH_PKGCONFIG) OR BLAS_GIVEN_BY_USER )
set
(
OMP_LIB
""
)
endif
()
endif
()
#older vesions of intel mkl libs
#older ve
r
sions of intel mkl libs
if
(
BLA_VENDOR STREQUAL
"Intel"
OR BLA_VENDOR STREQUAL
"All"
)
list
(
APPEND BLAS_SEARCH_LIBS
"mkl"
)
...
...
@@ -777,8 +810,14 @@ if( (NOT BLAS_FOUND_WITH_PKGCONFIG) OR BLAS_GIVEN_BY_USER )
foreach
(
IT
${
BLAS_SEARCH_LIBS
}
)
string
(
REPLACE
" "
";"
SEARCH_LIBS
${
IT
}
)
if
(
${
_LIBRARIES
}
)
else
()
# determine if we look at a sequential or multithreaded version
set
(
MKL_MT OFF
)
foreach
(
_lib
${
SEARCH_LIBS
}
)
if
(
${
_lib
}
MATCHES
"thread"
)
set
(
MKL_MT ON
)
endif
()
endforeach
()
if
(
MKL_MT
)
check_fortran_libraries
(
${
_LIBRARIES
}
BLAS
...
...
@@ -787,8 +826,22 @@ if( (NOT BLAS_FOUND_WITH_PKGCONFIG) OR BLAS_GIVEN_BY_USER )
"
${
SEARCH_LIBS
}
"
"
${
OMP_LIB
}
;
${
CMAKE_THREAD_LIBS_INIT
}
;
${
LM
}
"
)
if
(
_LIBRARIES
)
set
(
BLAS_LDFLAGS_OTHER
"
${
additional_flags
}
"
)
else
()
check_fortran_libraries
(
${
_LIBRARIES
}
BLAS
${
BLAS_mkl_SEARCH_SYMBOL
}
"
${
additional_flags
}
"
"
${
SEARCH_LIBS
}
"
"
${
CMAKE_THREAD_LIBS_INIT
}
;
${
LM
}
"
)
endif
()
if
(
${
_LIBRARIES
}
)
set
(
BLAS_LDFLAGS_OTHER
"
${
additional_flags
}
"
)
if
(
MKL_MT
)
set
(
BLAS_LIBRARIES_PAR
"
${${
_LIBRARIES
}}
"
)
else
()
set
(
BLAS_LIBRARIES_SEQ
"
${${
_LIBRARIES
}}
"
)
endif
()
endif
()
endforeach
()
...
...
This diff is collapsed.
Click to expand it.
modules/find/FindLAPACK.cmake
View file @
fe776ca3
...
...
@@ -23,6 +23,8 @@
# LAPACK_INCLUDE_DIRS - lapack include directories
# LAPACK_LIBRARY_DIRS - lapack link directories
# LAPACK_LIBRARIES - lapack libraries to be linked (absolute path)
# LAPACK_LIBRARIES_SEQ - lapack libraries to be linked (absolute path), sequential version (Intel MKL)
# LAPACK_LIBRARIES_PAR - lapack libraries to be linked (absolute path), multithreaded version (Intel MKL)
# LAPACK_CFLAGS_OTHER_DEP - lapack + dependencies compiler flags without headers paths
# LAPACK_LDFLAGS_OTHER_DEP - lapack + dependencies linker flags without libraries
# LAPACK_INCLUDE_DIRS_DEP - lapack + dependencies include directories
...
...
@@ -360,6 +362,12 @@ if(BLAS_FOUND)
""
)
if
(
LAPACK_LIBRARIES
)
if
(
BLAS_LIBRARIES_SEQ
)
set
(
LAPACK_LIBRARIES_SEQ
"
${
BLAS_LIBRARIES_SEQ
}
"
)
endif
()
if
(
BLAS_LIBRARIES_PAR
)
set
(
LAPACK_LIBRARIES_PAR
"
${
BLAS_LIBRARIES_PAR
}
"
)
endif
()
if
(
NOT LAPACK_FIND_QUIETLY
)
if
(
LAPACK_LIBRARIES
)
message
(
STATUS
"Looking for LAPACK in BLAS: found"
)
...
...
@@ -395,14 +403,21 @@ if(BLAS_FOUND)
endif
()
# try different blas
if
(
BLA_VENDOR STREQUAL
"Intel10_64lp"
)
pkg_search_module
(
LAPACK mkl-
${
MKL_STR_BLA_STATIC
}
-lp64-seq
)
if
(
LAPACK_FOUND
)
set
(
LAPACK_VENDOR_FOUND
"Intel MKL Sequential"
)
set
(
LAPACK_LIBRARIES_SEQ
"
${
LAPACK_LIBRARIES
}
"
)
endif
()
pkg_search_module
(
LAPACK mkl-
${
MKL_STR_BLA_STATIC
}
-lp64-iomp
)
if
(
LAPACK_FOUND
)
set
(
LAPACK_VENDOR_FOUND
"Intel MKL"
)
set
(
LAPACK_VENDOR_FOUND
"Intel MKL Multithreaded"
)
set
(
LAPACK_LIBRARIES_PAR
"
${
LAPACK_LIBRARIES
}
"
)
endif
()
elseif
(
BLA_VENDOR STREQUAL
"Intel10_64lp_seq"
)
pkg_search_module
(
LAPACK mkl-
${
MKL_STR_BLA_STATIC
}
-lp64-seq
)
if
(
LAPACK_FOUND
)
set
(
LAPACK_VENDOR_FOUND
"Intel MKL"
)
set
(
LAPACK_LIBRARIES_SEQ
"
${
LAPACK_LIBRARIES
}
"
)
endif
()
elseif
(
BLA_VENDOR STREQUAL
"Open"
)
pkg_search_module
(
LAPACK openblas
)
...
...
@@ -416,9 +431,15 @@ if(BLAS_FOUND)
endif
()
else
()
if
(
NOT LAPACK_FOUND
)
pkg_search_module
(
LAPACK mkl-
${
MKL_STR_BLA_STATIC
}
-lp64-iomp
)
if
(
LAPACK_FOUND
)
set
(
LAPACK_VENDOR_FOUND
"Intel MKL Multithreaded"
)
set
(
LAPACK_LIBRARIES_PAR
"
${
LAPACK_LIBRARIES
}
"
)
endif
()
pkg_search_module
(
LAPACK mkl-
${
MKL_STR_BLA_STATIC
}
-lp64-seq
)
if
(
LAPACK_FOUND
)
set
(
LAPACK_VENDOR_FOUND
"Intel MKL"
)
set
(
LAPACK_LIBRARIES_SEQ
"
${
LAPACK_LIBRARIES
}
"
)
endif
()
endif
()
if
(
NOT LAPACK_FOUND
)
...
...
This diff is collapsed.
Click to expand it.