From 79f2e82af0e56482c0ff27a2c1127231e81e70ed Mon Sep 17 00:00:00 2001 From: Markus Rampp <mjr@mpcdf.mpg.de> Date: Mon, 9 Jan 2017 15:34:26 +0100 Subject: [PATCH] modify CMakeLists.txt to support new CUDA sdk versions and compute capabilities * add compilation support for P100 and GTX1080 GPUs (cuda/8.0, compute_6x) * introduce conditional for handling list of CUDA compute architectures depending on CUDA sdk version --- CMakeLists.txt | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index b1ce3f3..4b13963 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -71,12 +71,20 @@ if (CUDA_FOUND) endif() set(CUDA_NVCC_FLAGS "${CUDA_NVCC_FLAGS};--use_fast_math;-ftz=true;-O4;-Xptxas -O4") -# list(APPEND CUDA_NVCC_FLAGS "-gencode=arch=compute_13,code=sm_13") - list(APPEND CUDA_NVCC_FLAGS "-gencode=arch=compute_20,code=sm_20") - list(APPEND CUDA_NVCC_FLAGS "-gencode=arch=compute_20,code=sm_21") + if (${CUDA_VERSION} LESS 7.0) + list(APPEND CUDA_NVCC_FLAGS "-gencode=arch=compute_13,code=sm_13") + endif() + if (${CUDA_VERSION} LESS 8.5) + list(APPEND CUDA_NVCC_FLAGS "-gencode=arch=compute_20,code=[sm_20,sm_21]") + endif() list(APPEND CUDA_NVCC_FLAGS "-gencode=arch=compute_30,code=sm_30") list(APPEND CUDA_NVCC_FLAGS "-gencode=arch=compute_35,code=sm_35") - list(APPEND CUDA_NVCC_FLAGS "-gencode=arch=compute_52,code=sm_52") + if (NOT (${CUDA_VERSION} LESS 7.5)) + list(APPEND CUDA_NVCC_FLAGS "-gencode=arch=compute_52,code=sm_52") + endif() + if (NOT (${CUDA_VERSION} LESS 8.0)) + list(APPEND CUDA_NVCC_FLAGS "-gencode=arch=compute_60,code=[sm_60,sm_61]") + endif() add_definitions(-DWITH_CUDA) set (BIOEM_CUDA_STATUS "Found") endif() @@ -160,6 +168,7 @@ message(STATUS "CUDA: ${BIOEM_CUDA_STATUS}") message(STATUS "OpenMP: ${BIOEM_OPENMP_STATUS}") message(STATUS "MPI: ${BIOEM_MPI_STATUS}") + if (PRINT_CMAKE_VARIABLES) get_cmake_property(_variableNames VARIABLES) foreach (_variableName ${_variableNames}) -- GitLab