From a9c63ee53a7e2c861f26956ee84e7e801c11a625 Mon Sep 17 00:00:00 2001 From: Johnny Date: Wed, 22 Jan 2025 01:16:27 +0100 Subject: [PATCH 01/14] initial support blackwell --- .github/scripts/build-cuda.sh | 2 +- CHANGELOG.md | 6 ++++++ CMakeLists.txt | 13 ++++++++++++- 3 files changed, 19 insertions(+), 2 deletions(-) diff --git a/.github/scripts/build-cuda.sh b/.github/scripts/build-cuda.sh index 4f616a7c9..630a79c13 100644 --- a/.github/scripts/build-cuda.sh +++ b/.github/scripts/build-cuda.sh @@ -4,7 +4,7 @@ declare build_os declare cuda_version set -xeuo pipefail -build_capability="50;52;60;61;70;75;80;86;89;90" +build_capability="50;52;60;61;70;75;80;86;89;90;100;120" [[ "${cuda_version}" == 11.7.* ]] && build_capability=${build_capability%??????} [[ "${cuda_version}" == 11.8.* ]] && build_capability=${build_capability%???} [[ "${build_os}" = windows-* ]] && python3 -m pip install ninja diff --git a/CHANGELOG.md b/CHANGELOG.md index fb69ff376..64d01e91d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,9 @@ +### 0.43.4 + +#### Improvements: + +- Initial Support Blackwell B100 GPUs and RTX 50 series GPUs + ### 0.43.3 #### Improvements: diff --git a/CMakeLists.txt b/CMakeLists.txt index ce3962ff7..c9eefb751 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 120) + list(APPEND CMAKE_CUDA_ARCHITECTURES_ALL_MAJOR 120) + endif() endif() string(APPEND CMAKE_CUDA_FLAGS " --use_fast_math") From 5f2b5af0d5ba82830453c9d0ce463025a0d4590d Mon Sep 17 00:00:00 2001 From: Johnny Date: Wed, 22 Jan 2025 18:07:35 +0100 Subject: [PATCH 02/14] Update CHANGELOG.md Co-authored-by: Matthew Douglas <38992547+matthewdouglas@users.noreply.github.com> --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 64d01e91d..59e8c4c0e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,4 +1,4 @@ -### 0.43.4 +### 0.45.1 #### Improvements: From c6c4626a761e5e4c33c30025c4c8bac92fa2f157 Mon Sep 17 00:00:00 2001 From: Johnny Date: Wed, 22 Jan 2025 18:09:35 +0100 Subject: [PATCH 03/14] Update CMakeLists.txt --- CMakeLists.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index c9eefb751..d16e94690 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -130,8 +130,8 @@ if(BUILD_CUDA) # 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 120) - list(APPEND CMAKE_CUDA_ARCHITECTURES_ALL_MAJOR 120) + list(APPEND CMAKE_CUDA_ARCHITECTURES_ALL 101 120) + list(APPEND CMAKE_CUDA_ARCHITECTURES_ALL_MAJOR 101 120) endif() endif() From 8cbbcf54bbcd8e239a2cc20ded1c9bb06c3e5f13 Mon Sep 17 00:00:00 2001 From: Johnny Date: Wed, 22 Jan 2025 18:11:07 +0100 Subject: [PATCH 04/14] Update CHANGELOG.md --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 59e8c4c0e..693a2655d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,7 +2,7 @@ #### Improvements: -- Initial Support Blackwell B100 GPUs and RTX 50 series GPUs +- Initial Support Blackwell B100 GPUs, RTX 50 Blackwell series GPUs and Jetson Thor Blackwell ### 0.43.3 From 713e94725b78f02e1623ace6379e9ef2293b2f4a Mon Sep 17 00:00:00 2001 From: Johnny Date: Wed, 22 Jan 2025 18:17:50 +0100 Subject: [PATCH 05/14] fix build-cuda.sh --- .github/scripts/build-cuda.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/scripts/build-cuda.sh b/.github/scripts/build-cuda.sh index 630a79c13..ae48eae3a 100644 --- a/.github/scripts/build-cuda.sh +++ b/.github/scripts/build-cuda.sh @@ -5,8 +5,8 @@ declare cuda_version set -xeuo pipefail build_capability="50;52;60;61;70;75;80;86;89;90;100;120" -[[ "${cuda_version}" == 11.7.* ]] && build_capability=${build_capability%??????} -[[ "${cuda_version}" == 11.8.* ]] && build_capability=${build_capability%???} +[[ "${cuda_version}" == 11.7.* ]] && build_capability=${build_capability%????????} +[[ "${cuda_version}" == 11.8.* ]] && build_capability=${build_capability%?????} [[ "${build_os}" = windows-* ]] && python3 -m pip install ninja if [ "${build_os:0:6}" == ubuntu ]; then From b803bdfa4b9db4c0fa8c5b7cacff796aec1601dc Mon Sep 17 00:00:00 2001 From: Johnny Date: Wed, 22 Jan 2025 18:21:25 +0100 Subject: [PATCH 06/14] fix build-cuda.sh --- .github/scripts/build-cuda.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/scripts/build-cuda.sh b/.github/scripts/build-cuda.sh index ae48eae3a..74e6f188d 100644 --- a/.github/scripts/build-cuda.sh +++ b/.github/scripts/build-cuda.sh @@ -5,8 +5,8 @@ declare cuda_version set -xeuo pipefail build_capability="50;52;60;61;70;75;80;86;89;90;100;120" -[[ "${cuda_version}" == 11.7.* ]] && build_capability=${build_capability%????????} -[[ "${cuda_version}" == 11.8.* ]] && build_capability=${build_capability%?????} +[[ "${cuda_version}" == 11.7.* ]] && build_capability=${build_capability%??????????????????} +[[ "${cuda_version}" == 11.8.* ]] && build_capability=${build_capability%?????????} [[ "${build_os}" = windows-* ]] && python3 -m pip install ninja if [ "${build_os:0:6}" == ubuntu ]; then From b378e243907e96e11109b5b89328dcb1ddba9da7 Mon Sep 17 00:00:00 2001 From: Johnny Date: Wed, 22 Jan 2025 18:31:11 +0100 Subject: [PATCH 07/14] fix cuda 12.7 build-cuda.sh --- .github/scripts/build-cuda.sh | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/.github/scripts/build-cuda.sh b/.github/scripts/build-cuda.sh index 74e6f188d..7432a54eb 100644 --- a/.github/scripts/build-cuda.sh +++ b/.github/scripts/build-cuda.sh @@ -5,8 +5,9 @@ declare cuda_version set -xeuo pipefail build_capability="50;52;60;61;70;75;80;86;89;90;100;120" -[[ "${cuda_version}" == 11.7.* ]] && build_capability=${build_capability%??????????????????} -[[ "${cuda_version}" == 11.8.* ]] && build_capability=${build_capability%?????????} +[[ "${cuda_version}" == 11.7.* ]] && build_capability=${build_capability%???????????????????????} +[[ "${cuda_version}" == 11.8.* ]] && build_capability=${build_capability%??????????????????} +[[ "${cuda_version}" < 12.7 ]] && build_capability=${build_capability%??????????????????} [[ "${build_os}" = windows-* ]] && python3 -m pip install ninja if [ "${build_os:0:6}" == ubuntu ]; then From d65d6e174d287627f0f3cbfa3feca474a3a80fd7 Mon Sep 17 00:00:00 2001 From: Johnny Date: Wed, 22 Jan 2025 18:43:15 +0100 Subject: [PATCH 08/14] Update build-cuda.sh --- .github/scripts/build-cuda.sh | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/.github/scripts/build-cuda.sh b/.github/scripts/build-cuda.sh index 7432a54eb..6c618b0cc 100644 --- a/.github/scripts/build-cuda.sh +++ b/.github/scripts/build-cuda.sh @@ -5,9 +5,12 @@ declare cuda_version set -xeuo pipefail build_capability="50;52;60;61;70;75;80;86;89;90;100;120" -[[ "${cuda_version}" == 11.7.* ]] && build_capability=${build_capability%???????????????????????} -[[ "${cuda_version}" == 11.8.* ]] && build_capability=${build_capability%??????????????????} -[[ "${cuda_version}" < 12.7 ]] && build_capability=${build_capability%??????????????????} +remove_for_11_7=";86;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 From 1bc0fd8267e7272df08126e492d1343b80b2c00d Mon Sep 17 00:00:00 2001 From: Johnny Date: Wed, 22 Jan 2025 18:49:10 +0100 Subject: [PATCH 09/14] Update cuda from 12.6.2 to 12.6.3 --- .github/workflows/python-package.yml | 2 +- install_cuda.py | 2 +- install_cuda.sh | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/python-package.yml b/.github/workflows/python-package.yml index 5cd956574..bd2380964 100644 --- a/.github/workflows/python-package.yml +++ b/.github/workflows/python-package.yml @@ -64,7 +64,7 @@ jobs: os: [ubuntu-latest, windows-latest] arch: [x86_64, aarch64] cuda_version: - ["11.7.1", "11.8.0", "12.0.1", "12.1.1", "12.2.2", "12.3.2", "12.4.1", "12.5.1", "12.6.2"] + ["11.7.1", "11.8.0", "12.0.1", "12.1.1", "12.2.2", "12.3.2", "12.4.1", "12.5.1", "12.6.3"] exclude: - os: windows-latest # This probably requires arm64 Windows agents arch: aarch64 diff --git a/install_cuda.py b/install_cuda.py index a1fe2c545..dc6a403fe 100644 --- a/install_cuda.py +++ b/install_cuda.py @@ -19,7 +19,7 @@ "123": "https://developer.download.nvidia.com/compute/cuda/12.3.2/local_installers/cuda_12.3.2_545.23.08_linux.run", "124": "https://developer.download.nvidia.com/compute/cuda/12.4.1/local_installers/cuda_12.4.1_550.54.15_linux.run", "125": "https://developer.download.nvidia.com/compute/cuda/12.5.1/local_installers/cuda_12.5.1_555.42.06_linux.run", - "126": "https://developer.download.nvidia.com/compute/cuda/12.6.2/local_installers/cuda_12.6.2_560.35.03_linux.run", + "126": "https://developer.download.nvidia.com/compute/cuda/12.6.3/local_installers/cuda_12.6.3_560.35.05_linux.run", } diff --git a/install_cuda.sh b/install_cuda.sh index 269981f66..a87e52c5e 100644 --- a/install_cuda.sh +++ b/install_cuda.sh @@ -13,7 +13,7 @@ URL122=https://developer.download.nvidia.com/compute/cuda/12.2.2/local_installer URL123=https://developer.download.nvidia.com/compute/cuda/12.3.2/local_installers/cuda_12.3.2_545.23.08_linux.run URL124=https://developer.download.nvidia.com/compute/cuda/12.4.1/local_installers/cuda_12.4.1_550.54.15_linux.run URL125=https://developer.download.nvidia.com/compute/cuda/12.5.1/local_installers/cuda_12.5.1_555.42.06_linux.run -URL126=https://developer.download.nvidia.com/compute/cuda/12.6.2/local_installers/cuda_12.6.2_560.35.03_linux.run +URL126=https://developer.download.nvidia.com/compute/cuda/12.6.3/local_installers/cuda_12.6.3_560.35.05_linux.run CUDA_VERSION=$1 BASE_PATH=$2 From c230292e91c81f6f7abf1728351ad43546f37baa Mon Sep 17 00:00:00 2001 From: Johnny Date: Wed, 22 Jan 2025 22:07:48 +0100 Subject: [PATCH 10/14] Update .github/workflows/python-package.yml Co-authored-by: Matthew Douglas <38992547+matthewdouglas@users.noreply.github.com> --- .github/workflows/python-package.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/python-package.yml b/.github/workflows/python-package.yml index bd2380964..5cd956574 100644 --- a/.github/workflows/python-package.yml +++ b/.github/workflows/python-package.yml @@ -64,7 +64,7 @@ jobs: os: [ubuntu-latest, windows-latest] arch: [x86_64, aarch64] cuda_version: - ["11.7.1", "11.8.0", "12.0.1", "12.1.1", "12.2.2", "12.3.2", "12.4.1", "12.5.1", "12.6.3"] + ["11.7.1", "11.8.0", "12.0.1", "12.1.1", "12.2.2", "12.3.2", "12.4.1", "12.5.1", "12.6.2"] exclude: - os: windows-latest # This probably requires arm64 Windows agents arch: aarch64 From 9281880e1fa865853bb16090054b91f63864aeaa Mon Sep 17 00:00:00 2001 From: Johnny Date: Wed, 22 Jan 2025 22:07:57 +0100 Subject: [PATCH 11/14] Update install_cuda.py Co-authored-by: Matthew Douglas <38992547+matthewdouglas@users.noreply.github.com> --- install_cuda.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/install_cuda.py b/install_cuda.py index dc6a403fe..a1fe2c545 100644 --- a/install_cuda.py +++ b/install_cuda.py @@ -19,7 +19,7 @@ "123": "https://developer.download.nvidia.com/compute/cuda/12.3.2/local_installers/cuda_12.3.2_545.23.08_linux.run", "124": "https://developer.download.nvidia.com/compute/cuda/12.4.1/local_installers/cuda_12.4.1_550.54.15_linux.run", "125": "https://developer.download.nvidia.com/compute/cuda/12.5.1/local_installers/cuda_12.5.1_555.42.06_linux.run", - "126": "https://developer.download.nvidia.com/compute/cuda/12.6.3/local_installers/cuda_12.6.3_560.35.05_linux.run", + "126": "https://developer.download.nvidia.com/compute/cuda/12.6.2/local_installers/cuda_12.6.2_560.35.03_linux.run", } From 517d186127240595218ce71665f7fc1aba5b9f9d Mon Sep 17 00:00:00 2001 From: Johnny Date: Wed, 22 Jan 2025 22:08:03 +0100 Subject: [PATCH 12/14] Update install_cuda.sh Co-authored-by: Matthew Douglas <38992547+matthewdouglas@users.noreply.github.com> --- install_cuda.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/install_cuda.sh b/install_cuda.sh index a87e52c5e..81396be31 100644 --- a/install_cuda.sh +++ b/install_cuda.sh @@ -13,7 +13,7 @@ URL122=https://developer.download.nvidia.com/compute/cuda/12.2.2/local_installer URL123=https://developer.download.nvidia.com/compute/cuda/12.3.2/local_installers/cuda_12.3.2_545.23.08_linux.run URL124=https://developer.download.nvidia.com/compute/cuda/12.4.1/local_installers/cuda_12.4.1_550.54.15_linux.run URL125=https://developer.download.nvidia.com/compute/cuda/12.5.1/local_installers/cuda_12.5.1_555.42.06_linux.run -URL126=https://developer.download.nvidia.com/compute/cuda/12.6.3/local_installers/cuda_12.6.3_560.35.05_linux.run +URL126=https://developer.download.nvidia.com/compute/cuda/12.6.3/local_installers/cuda_12.6.2_560.35.03_linux.run CUDA_VERSION=$1 BASE_PATH=$2 From 4fb75fe289c5649594c73d1b7b7cb488386adf7f Mon Sep 17 00:00:00 2001 From: Matthew Douglas <38992547+matthewdouglas@users.noreply.github.com> Date: Wed, 22 Jan 2025 16:10:10 -0500 Subject: [PATCH 13/14] Update .github/scripts/build-cuda.sh --- .github/scripts/build-cuda.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/scripts/build-cuda.sh b/.github/scripts/build-cuda.sh index 6c618b0cc..723ca5923 100644 --- a/.github/scripts/build-cuda.sh +++ b/.github/scripts/build-cuda.sh @@ -5,7 +5,7 @@ declare cuda_version set -xeuo pipefail build_capability="50;52;60;61;70;75;80;86;89;90;100;120" -remove_for_11_7=";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") From 0e36e8dc06e9634ed2298bbabe728970090d49a1 Mon Sep 17 00:00:00 2001 From: Matthew Douglas <38992547+matthewdouglas@users.noreply.github.com> Date: Wed, 22 Jan 2025 16:11:08 -0500 Subject: [PATCH 14/14] Update install_cuda.sh --- install_cuda.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/install_cuda.sh b/install_cuda.sh index 81396be31..269981f66 100644 --- a/install_cuda.sh +++ b/install_cuda.sh @@ -13,7 +13,7 @@ URL122=https://developer.download.nvidia.com/compute/cuda/12.2.2/local_installer URL123=https://developer.download.nvidia.com/compute/cuda/12.3.2/local_installers/cuda_12.3.2_545.23.08_linux.run URL124=https://developer.download.nvidia.com/compute/cuda/12.4.1/local_installers/cuda_12.4.1_550.54.15_linux.run URL125=https://developer.download.nvidia.com/compute/cuda/12.5.1/local_installers/cuda_12.5.1_555.42.06_linux.run -URL126=https://developer.download.nvidia.com/compute/cuda/12.6.3/local_installers/cuda_12.6.2_560.35.03_linux.run +URL126=https://developer.download.nvidia.com/compute/cuda/12.6.2/local_installers/cuda_12.6.2_560.35.03_linux.run CUDA_VERSION=$1 BASE_PATH=$2