diff --git a/CMakeLists.txt b/CMakeLists.txt index 2deeb33..140f457 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -49,11 +49,15 @@ endif() # CUDA architectures: cover Pascal to Blackwell for distributed binaries. # Pascal (61-real) is SASS-only, no virtual/PTX entry: it's the oldest # supported card and doesn't need to seed forward JIT compat for anything -# older, unlike the 75-virtual baseline which does that for 7.5+. +# older, unlike the 75-virtual baseline which does that for 7.5+. CUDA 13 +# removed offline compilation for pre-Turing architectures, so 61-real is +# only emitted on 12.x toolkits; Blackwell (120a/121a) needs 12.8+. # Users can override with -DCMAKE_CUDA_ARCHITECTURES=native for local builds. if(NOT DEFINED CMAKE_CUDA_ARCHITECTURES) find_package(CUDAToolkit QUIET) - if(CUDAToolkit_FOUND AND CUDAToolkit_VERSION VERSION_GREATER_EQUAL "12.8") + if(CUDAToolkit_FOUND AND CUDAToolkit_VERSION VERSION_GREATER_EQUAL "13.0") + set(CMAKE_CUDA_ARCHITECTURES "75-virtual;80-virtual;86-real;89-real;120a-real;121a-real") + elseif(CUDAToolkit_FOUND AND CUDAToolkit_VERSION VERSION_GREATER_EQUAL "12.8") set(CMAKE_CUDA_ARCHITECTURES "61-real;75-virtual;80-virtual;86-real;89-real;120a-real;121a-real") else() set(CMAKE_CUDA_ARCHITECTURES "61-real;75-virtual;80-virtual;86-real;89-real")