Skip to content

CI: Add CUDA 13.2 to relevant workflows#1374

Open
ptheywood wants to merge 1 commit intoci-pre-vs2026from
ci-cu131-cu132
Open

CI: Add CUDA 13.2 to relevant workflows#1374
ptheywood wants to merge 1 commit intoci-pre-vs2026from
ci-cu131-cu132

Conversation

@ptheywood
Copy link
Copy Markdown
Member

Adds CUDA 13.2 to relevant CI workflows

Closes #1364

@ptheywood
Copy link
Copy Markdown
Member Author

ptheywood commented Apr 1, 2026

CUDA 13.2 on windows is hitting some deprecation warnings being promoted to errors in Thrust, which are not being triggered under linux CI

       "D:\a\FLAMEGPU2\FLAMEGPU2\build\tests\tests.vcxproj" (default target) (1) ->
       "D:\a\FLAMEGPU2\FLAMEGPU2\build\tests\tests.vcxproj" (CudaBuildCore target) (1:49) ->
       (CudaBuildCore target) -> 
         C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v13.2/include/cccl\thrust/system/detail/sequential/insertion_sort.h(93): error #1444-D: type "thrust::_V_300200_SM_750::less<float>" was declared deprecated ("Use cuda::std::less instead") [D:\a\FLAMEGPU2\FLAMEGPU2\build\tests\tests.vcxproj]
         C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v13.2/include/cccl\thrust/system/detail/sequential/merge.h(99): error #1444-D: type "thrust::_V_300200_SM_750::less<float>" was declared deprecated ("Use cuda::std::less instead") [D:\a\FLAMEGPU2\FLAMEGPU2\build\tests\tests.vcxproj]
         C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v13.2/include/cccl\thrust/system/detail/sequential/merge.h(99): error #1444-D: type "thrust::_V_300200_SM_750::less<float>" was declared deprecated ("Use cuda::std::less instead") [D:\a\FLAMEGPU2\FLAMEGPU2\build\tests\tests.vcxproj]
         C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v13.2/include/cccl\thrust/system/detail/sequential/insertion_sort.h(93): error #1444-D: type "thrust::_V_300200_SM_750::greater<float>" was declared deprecated ("Use cuda::std::greater instead") [D:\a\FLAMEGPU2\FLAMEGPU2\build\tests\tests.vcxproj]
         C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v13.2/include/cccl\thrust/system/detail/sequential/merge.h(99): error #1444-D: type "thrust::_V_300200_SM_750::greater<float>" was declared deprecated ("Use cuda::std::greater instead") [D:\a\FLAMEGPU2\FLAMEGPU2\build\tests\tests.vcxproj]
         C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v13.2/include/cccl\thrust/system/detail/sequential/merge.h(99): error #1444-D: type "thrust::_V_300200_SM_750::greater<float>" was declared deprecated ("Use cuda::std::greater instead") [D:\a\FLAMEGPU2\FLAMEGPU2\build\tests\tests.vcxproj]
         C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v13.2/include/cccl\thrust/system/detail/sequential/insertion_sort.h(93): error #1444-D: type "thrust::_V_300200_SM_750::less<int>" was declared deprecated ("Use cuda::std::less instead") [D:\a\FLAMEGPU2\FLAMEGPU2\build\tests\tests.vcxproj]
         C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v13.2/include/cccl\thrust/system/detail/sequential/merge.h(99): error #1444-D: type "thrust::_V_300200_SM_750::less<int>" was declared deprecated ("Use cuda::std::less instead") [D:\a\FLAMEGPU2\FLAMEGPU2\build\tests\tests.vcxproj]
         C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v13.2/include/cccl\thrust/system/detail/sequential/merge.h(99): error #1444-D: type "thrust::_V_300200_SM_750::less<int>" was declared deprecated ("Use cuda::std::less instead") [D:\a\FLAMEGPU2\FLAMEGPU2\build\tests\tests.vcxproj]
         C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v13.2/include/cccl\thrust/system/detail/sequential/insertion_sort.h(93): error #1444-D: type "thrust::_V_300200_SM_750::greater<int>" was declared deprecated ("Use cuda::std::greater instead") [D:\a\FLAMEGPU2\FLAMEGPU2\build\tests\tests.vcxproj]
         C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v13.2/include/cccl\thrust/system/detail/sequential/merge.h(99): error #1444-D: type "thrust::_V_300200_SM_750::greater<int>" was declared deprecated ("Use cuda::std::greater instead") [D:\a\FLAMEGPU2\FLAMEGPU2\build\tests\tests.vcxproj]
         C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v13.2/include/cccl\thrust/system/detail/sequential/merge.h(99): error #1444-D: type "thrust::_V_300200_SM_750::greater<int>" was declared deprecated ("Use cuda::std::greater instead") [D:\a\FLAMEGPU2\FLAMEGPU2\build\tests\tests.vcxproj]

thrust::greater appears to have been marked as deprecated in CCCL 3.1 .

Need to check that cuda::std::greater etc available for all CUDA versions we support (/ all CCCL we support) else we'll need to make this change conditional

Edit: This will likely be a conflcit with #1367, where rocthrust/hipcub are used rather than a CCCL equivalent 😢

@ptheywood ptheywood closed this Apr 1, 2026
@ptheywood ptheywood reopened this Apr 1, 2026
@ptheywood
Copy link
Copy Markdown
Member Author

With CUDA 13.2, and HIP in-mind, switching thrust::less<T> and thrust::greater<T> to std::less<> and std::greater<> appears to beahave, atleast under linux with GCC 15.

This will need testing (i.e. run the test suite) with our minimum supported CUDA & host compiler (12.0, GCC10 + 12.4 MSVC 17) on all platforms to ensure that nvcc handles it correctly. I think this should be fine for CUDA 11.0+ from googling, but not 100% confident of that.

If that doesn't work, we'll need to use cuda::std for nvidia and then use ifdef soup for HIP support.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant