Skip to content

Commit bc17385

Browse files
authored
Refactor CUDA version handling in CMakeLists.txt (deepmodeling#6813)
Updated CUDA version checks and architecture settings in CMakeLists.txt.
1 parent 2332ce6 commit bc17385

1 file changed

Lines changed: 17 additions & 10 deletions

File tree

CMakeLists.txt

Lines changed: 17 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -295,26 +295,33 @@ endif()
295295

296296
if(USE_CUDA)
297297
cmake_minimum_required(VERSION 3.18) # required by `CUDA_ARCHITECTURES` below
298+
find_package(CUDAToolkit REQUIRED)
298299
set_if_higher(CMAKE_CXX_STANDARD 14)
299-
if(CUDA_VERSION VERSION_GREATER_EQUAL "13.0")
300-
message(STATUS "CUDA ${CUDA_VERSION} detected. Setting CMAKE_CUDA_STANDARD to 17.")
300+
if(CUDAToolkit_VERSION VERSION_GREATER_EQUAL "13.0")
301+
message(STATUS "CUDA ${CUDAToolkit_VERSION} detected. Setting CMAKE_CUDA_STANDARD to 17.")
301302
set_if_higher(CMAKE_CXX_STANDARD 17)
302303
endif()
303304
set(CMAKE_CXX_EXTENSIONS ON)
304305
set(CMAKE_CUDA_STANDARD ${CMAKE_CXX_STANDARD})
305306
set(CMAKE_CUDA_STANDARD_REQUIRED ON)
306307
set(CMAKE_CUDA_HOST_COMPILER ${CMAKE_CXX_COMPILER})
307308
if(NOT DEFINED CMAKE_CUDA_ARCHITECTURES)
308-
find_package(CUDAToolkit REQUIRED)
309309
# check
310310
# https://gitlab.kitware.com/cmake/cmake/-/blob/master/Modules/Internal/CMakeCUDAArchitecturesAll.cmake
311-
# for available architechures in different CUDA versions
312-
set(CMAKE_CUDA_ARCHITECTURES
313-
60 # P100
314-
70 # V100
315-
# Add your CUDA arch here Check the Compute Capability version of your
316-
# GPU at: https://en.wikipedia.org/wiki/CUDA#GPUs_supported
317-
)
311+
# for available architectures in different CUDA versions
312+
# CUDA 13.0+ dropped support for architectures below 75
313+
if(CUDAToolkit_VERSION VERSION_LESS "13.0")
314+
set(CMAKE_CUDA_ARCHITECTURES
315+
60 # P100
316+
70 # V100
317+
)
318+
else()
319+
# Start with empty list; architectures 75+ will be added below
320+
set(CMAKE_CUDA_ARCHITECTURES)
321+
endif()
322+
323+
# Add your CUDA arch here Check the Compute Capability version of your
324+
# GPU at: https://en.wikipedia.org/wiki/CUDA#GPUs_supported
318325
if(CUDAToolkit_VERSION VERSION_GREATER_EQUAL 10.0)
319326
list(APPEND CMAKE_CUDA_ARCHITECTURES 75) # T4
320327
endif()

0 commit comments

Comments
 (0)