[arrayfire] 118/248: Default CPU fallback for CUDA LAPACK to OFF. Use CUDA_LAPACK_CPU_FALLBACK=ON
Ghislain Vaillant
ghisvail-guest at moszumanska.debian.org
Tue Nov 17 15:54:12 UTC 2015
This is an automated email from the git hooks/post-receive script.
ghisvail-guest pushed a commit to branch dfsg-clean
in repository arrayfire.
commit 6223be6802dd2d0f1a5c57e099e19a0d12dbba2b
Author: Shehzan Mohammed <shehzan at arrayfire.com>
Date: Sat Oct 10 12:40:31 2015 -0400
Default CPU fallback for CUDA LAPACK to OFF. Use CUDA_LAPACK_CPU_FALLBACK=ON
---
src/backend/cuda/CMakeLists.txt | 32 ++++++++++++++++++++------------
1 file changed, 20 insertions(+), 12 deletions(-)
diff --git a/src/backend/cuda/CMakeLists.txt b/src/backend/cuda/CMakeLists.txt
index 02e0b1a..2e231fe 100644
--- a/src/backend/cuda/CMakeLists.txt
+++ b/src/backend/cuda/CMakeLists.txt
@@ -69,22 +69,30 @@ ENDIF()
ADD_DEFINITIONS(-DAF_CUDA)
IF(${CUDA_VERSION_MAJOR} LESS 7)
- ## Try to use CPU side lapack
- IF(APPLE)
- FIND_PACKAGE(LAPACK)
- ELSE(APPLE) # Linux and Windows
- FIND_PACKAGE(LAPACKE)
- ENDIF(APPLE)
-
- IF(NOT LAPACK_FOUND)
+ # Use CPU Lapack as fallback?
+ OPTION(CUDA_LAPACK_CPU_FALLBACK "Use CPU LAPACK as fallback for CUDA LAPACK when CUDA is 6.5 or older" OFF)
+ MARK_AS_ADVANCED(CUDA_LAPACK_CPU_FALLBACK)
+
+ IF(${CUDA_LAPACK_CPU_FALLBACK})
+ ## Try to use CPU side lapack
+ IF(APPLE)
+ FIND_PACKAGE(LAPACK)
+ ELSE(APPLE) # Linux and Windows
+ FIND_PACKAGE(LAPACKE)
+ ENDIF(APPLE)
+
+ IF(NOT LAPACK_FOUND)
+ MESSAGE(STATUS "CUDA Version ${CUDA_VERSION_STRING} does not contain cuSolve library. Linear Algebra will not be available.")
+ ELSE(NOT LAPACK_FOUND)
+ MESSAGE(STATUS "CUDA Version ${CUDA_VERSION_STRING} does not contain cuSolve library. But CPU LAPACK libraries are available. Will fallback to using host side code.")
+ ADD_DEFINITIONS(-DWITH_CPU_LINEAR_ALGEBRA)
+ ENDIF()
+ ELSE()
MESSAGE(STATUS "CUDA Version ${CUDA_VERSION_STRING} does not contain cuSolve library. Linear Algebra will not be available.")
- ELSE(NOT LAPACK_FOUND)
- MESSAGE(STATUS "CUDA Version ${CUDA_VERSION_STRING} does not contain cuSolve library. But CPU LAPACK libraries are available. Will fallback to using host side code.")
- SET(CUDA_LAPACK_CPU_FALLBACK ON)
- ADD_DEFINITIONS(-DWITH_CPU_LINEAR_ALGEBRA)
ENDIF()
IF(CMAKE_VERSION VERSION_LESS 3.2)
SET(CUDA_cusolver_LIBRARY)
+ MARK_AS_ADVANCED(CUDA_cusolver_LIBRARY)
ENDIF(CMAKE_VERSION VERSION_LESS 3.2)
ELSE(${CUDA_VERSION_MAJOR} LESS 7)
MESSAGE(STATUS "CUDA cusolver library available in CUDA Version ${CUDA_VERSION_STRING}")
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/debian-science/packages/arrayfire.git
More information about the debian-science-commits
mailing list