Repository navigation
#4887 - Conditionally gate SM 100/120 on CUDA 12.8+ in default CMAKE_CUDA_ARCHITECTURES - #4888
Open
Deeven-Seru wants to merge 1 commit into
Open
Deeven-Seru wants to merge 1 commit into
Deeven-Seru wants to merge 1 commit into
Conversation
…CMAKE_CUDA_ARCHITECTURES In TensorRT 11.4 OSS release (NVIDIA#4872), CMAKE_CUDA_ARCHITECTURES was defaulted to include SM 100 and SM 120 unconditionally before CUDAToolkit was discovered. However, SM 100 and SM 120 (Blackwell) require CUDA 12.8+ to be supported by nvcc. Building on CUDA toolkits < 12.8 (such as CUDA 12.0 - 12.6) caused nvcc to immediately fail with 'Value sm_100 is not defined for option gpu-architecture'. This patch: - Defaults CMAKE_CUDA_ARCHITECTURES to SM 75 80 86 89 90 prior to toolkit discovery. - Conditionally appends SM 100 and SM 120 once CUDAToolkit_VERSION >= 12.8 is confirmed, matching the existing conditional logic for SM 110 (Thor, CUDA >= 13.0). - Fixes NVRTC version check in plugin_utils.py to check (nvrtc_major, nvrtc_minor) >= (11, 1), preventing CUDA 12.0/13.0 from incorrectly disabling CUBIN generation. Fixes NVIDIA#4887 Signed-off-by: Deeven Seru <deevenseru11@gmail.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Fixes #4887.
In the TensorRT 11.4 OSS release (#4872),
CMAKE_CUDA_ARCHITECTURESwas defaulted to include SM 100 and SM 120 unconditionally beforeCUDAToolkitdiscovery:While SM 110 (Thor) was conditionally appended only when
CUDAToolkit_VERSION VERSION_GREATER_EQUAL "13.0", SM 100 and SM 120 (Blackwell) require CUDA 12.8+ to be supported bynvcc. When compiling on CUDA toolkits prior to 12.8 (e.g. CUDA 12.0 - 12.6),nvccfatal errors with:TensorRT's internal plugin headers already reflect this requirement via
#if CUDA_VERSION >= 12080infused_multihead_attention_v2.h.This PR:
CMAKE_CUDA_ARCHITECTURESto75 80 86 89 90prior to toolkit discovery.CUDAToolkit_VERSION VERSION_GREATER_EQUAL "12.8"is confirmed, matching the existing Thor (110) conditional logic.samples/python/plugin_utils.pyto check(nvrtc_major, nvrtc_minor) >= (11, 1), preventing CUDA 12.0 and 13.0 (nvrtc_minor == 0) from incorrectly disabling CUBIN output.