diff --git a/.github/scripts/build-cuda.sh b/.github/scripts/build-cuda.sh index 4f616a7c9..723ca5923 100644 --- a/.github/scripts/build-cuda.sh +++ b/.github/scripts/build-cuda.sh @@ -4,9 +4,13 @@ declare build_os declare cuda_version set -xeuo pipefail -build_capability="50;52;60;61;70;75;80;86;89;90" -[[ "${cuda_version}" == 11.7.* ]] && build_capability=${build_capability%??????} -[[ "${cuda_version}" == 11.8.* ]] && build_capability=${build_capability%???} +build_capability="50;52;60;61;70;75;80;86;89;90;100;120" +remove_for_11_7=";89;90;100;120" +remove_for_11_8=";89;90;100;120" +remove_for_lt_12_7=";100;120" +[[ "${cuda_version}" == 11.7.* ]] && build_capability=$(sed 's|'"$remove_for_11_7"'||g' <<< "$build_capability") +[[ "${cuda_version}" == 11.8.* ]] && build_capability=$(sed 's|'"$remove_for_11_8"'||g' <<< "$build_capability") +[[ "${cuda_version}" < 12.7 ]] && build_capability=$(sed 's|'"$remove_for_lt_12_7"'||g; s|'"${remove_for_lt_12_7#;}"';||g' <<< "$build_capability") [[ "${build_os}" = windows-* ]] && python3 -m pip install ninja if [ "${build_os:0:6}" == ubuntu ]; then diff --git a/CHANGELOG.md b/CHANGELOG.md index fb69ff376..693a2655d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,9 @@ +### 0.45.1 + +#### Improvements: + +- Initial Support Blackwell B100 GPUs, RTX 50 Blackwell series GPUs and Jetson Thor Blackwell + ### 0.43.3 #### Improvements: diff --git a/CMakeLists.txt b/CMakeLists.txt index ce3962ff7..d16e94690 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -7,7 +7,7 @@ # - CUDA_VERSION: The expected CUDA version, for sanity checking. The actual version # is whatever CMake finds on your path. # - COMPUTE_CAPABILITY: Which GPU Arch/Compute codes to provide to NVCC. -# Separate by semicolons, i.e. `-DCOMPUTE_CAPABILITY=89;90` +# Separate by semicolons, i.e. `-DCOMPUTE_CAPABILITY=89;90;100;120` # Check your compute capability here: https://developer.nvidia.com/cuda-gpus # - PTXAS_VERBOSE: Pass the `-v` option to the PTX Assembler cmake_minimum_required(VERSION 3.22.1) @@ -122,6 +122,17 @@ if(BUILD_CUDA) list(APPEND CMAKE_CUDA_ARCHITECTURES_ALL 89 90) list(APPEND CMAKE_CUDA_ARCHITECTURES_ALL_MAJOR 90) endif() + # CUDA 12.7 adds support for Blackwell B100. + if (CMAKE_CUDA_COMPILER_VERSION VERSION_GREATER_EQUAL "12.7") + list(APPEND CMAKE_CUDA_ARCHITECTURES_ALL 100) + list(APPEND CMAKE_CUDA_ARCHITECTURES_ALL_MAJOR 100) + endif() + + # CUDA 12.8 adds support for RTX 50 Blackwell. + if (CMAKE_CUDA_COMPILER_VERSION VERSION_GREATER_EQUAL "12.8") + list(APPEND CMAKE_CUDA_ARCHITECTURES_ALL 101 120) + list(APPEND CMAKE_CUDA_ARCHITECTURES_ALL_MAJOR 101 120) + endif() endif() string(APPEND CMAKE_CUDA_FLAGS " --use_fast_math")