Skip to content

Conversation

@rgsl888prabhu
Copy link
Collaborator

@rgsl888prabhu rgsl888prabhu commented Jul 22, 2025

Description

This PR removes CUDA 11 pertaining changes since we have moved to CUDA 12 support only

Issue

closes #220

Checklist

  • I am familiar with the Contributing Guidelines.
  • Testing
    • New or existing tests cover these changes
    • Added tests
    • Created an issue to follow-up
    • NA
  • Documentation
    • The documentation is up to date with these changes
    • Added new documentation
    • NA

@rgsl888prabhu rgsl888prabhu requested review from a team as code owners July 22, 2025 15:07
@rgsl888prabhu rgsl888prabhu requested review from Iroy30 and vyasr July 22, 2025 15:07
@rgsl888prabhu rgsl888prabhu added non-breaking Introduces a non-breaking change improvement Improves an existing functionality labels Jul 22, 2025
@rgsl888prabhu rgsl888prabhu self-assigned this Jul 22, 2025
rgsl888prabhu and others added 3 commits July 22, 2025 10:16
Co-authored-by: Kyle Edwards <kyedwards@nvidia.com>
…8prabhu/cuopt_public into remove_cuda_11_missing_references
Copy link

@jakirkham jakirkham left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks Ram! 🙏

Had a couple comments below

secrets: inherit
uses: rapidsai/shared-workflows/.github/workflows/conda-cpp-build.yaml@branch-25.08
with:
matrix_filter: map(select((.CUDA_VER | startswith("12"))))

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Recognize we are only testing CUDA 12, but could we keep this?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Since we might move to cuda 13 in 25.10 or later, I removed it just for future case.

@jakirkham
Copy link

jakirkham commented Jul 22, 2025

Could we please also take a look at this code?

void end_capture(i_t total_pdlp_iterations)
{
if (total_pdlp_iterations % 2 == 0 && !even_initialized) {
RAFT_CUDA_TRY(cudaStreamEndCapture(stream_view_.value(), &even_graph));
// Extra NULL NULL 0 mandatory for cuda 11.8
RAFT_CUDA_TRY(cudaGraphInstantiate(&even_instance, even_graph, nullptr, nullptr, 0));
even_initialized = true;
RAFT_CUDA_TRY_NO_THROW(cudaGraphDestroy(even_graph));
} else if (total_pdlp_iterations % 2 == 1 && !odd_initialized) {
RAFT_CUDA_TRY(cudaStreamEndCapture(stream_view_.value(), &odd_graph));
// Extra NULL NULL 0 mandatory for cuda 11.8
RAFT_CUDA_TRY(cudaGraphInstantiate(&odd_instance, odd_graph, nullptr, nullptr, 0));
odd_initialized = true;
RAFT_CUDA_TRY_NO_THROW(cudaGraphDestroy(odd_graph));
}
}

Edit: Also this CMake code

cuopt/cpp/CMakeLists.txt

Lines 222 to 224 in 47fb158

if(CMAKE_CUDA_COMPILER_ID STREQUAL "NVIDIA" AND CMAKE_CUDA_COMPILER_VERSION VERSION_GREATER_EQUAL 11.4)
list(PREPEND CUOPT_PRIVATE_CUDA_LIBS CUDA::cublasLt)
endif()

@rgsl888prabhu
Copy link
Collaborator Author

Could we please also take a look at this code?

void end_capture(i_t total_pdlp_iterations)
{
if (total_pdlp_iterations % 2 == 0 && !even_initialized) {
RAFT_CUDA_TRY(cudaStreamEndCapture(stream_view_.value(), &even_graph));
// Extra NULL NULL 0 mandatory for cuda 11.8
RAFT_CUDA_TRY(cudaGraphInstantiate(&even_instance, even_graph, nullptr, nullptr, 0));
even_initialized = true;
RAFT_CUDA_TRY_NO_THROW(cudaGraphDestroy(even_graph));
} else if (total_pdlp_iterations % 2 == 1 && !odd_initialized) {
RAFT_CUDA_TRY(cudaStreamEndCapture(stream_view_.value(), &odd_graph));
// Extra NULL NULL 0 mandatory for cuda 11.8
RAFT_CUDA_TRY(cudaGraphInstantiate(&odd_instance, odd_graph, nullptr, nullptr, 0));
odd_initialized = true;
RAFT_CUDA_TRY_NO_THROW(cudaGraphDestroy(odd_graph));
}
}

Yes, I am currently discussing with team on how much effort would it have and asked them to push changes to this PR. Meanwhile, I will keep don't merge tag to this.

@rgsl888prabhu rgsl888prabhu added the do not merge Do not merge if this flag is set label Jul 22, 2025
@rgsl888prabhu rgsl888prabhu requested a review from a team as a code owner July 22, 2025 19:34
@rgsl888prabhu rgsl888prabhu added non-breaking Introduces a non-breaking change and removed non-breaking Introduces a non-breaking change do not merge Do not merge if this flag is set labels Jul 22, 2025
@jakirkham
Copy link

Thanks Ram! 🙏

Can you please look at this CMake code as well?

cuopt/cpp/CMakeLists.txt

Lines 222 to 224 in 47fb158

if(CMAKE_CUDA_COMPILER_ID STREQUAL "NVIDIA" AND CMAKE_CUDA_COMPILER_VERSION VERSION_GREATER_EQUAL 11.4)
list(PREPEND CUOPT_PRIVATE_CUDA_LIBS CUDA::cublasLt)
endif()

@rgsl888prabhu
Copy link
Collaborator Author

Thanks Ram! 🙏

Can you please look at this CMake code as well?

cuopt/cpp/CMakeLists.txt

Lines 222 to 224 in 47fb158

if(CMAKE_CUDA_COMPILER_ID STREQUAL "NVIDIA" AND CMAKE_CUDA_COMPILER_VERSION VERSION_GREATER_EQUAL 11.4)
list(PREPEND CUOPT_PRIVATE_CUDA_LIBS CUDA::cublasLt)
endif()

Removed if conditions around it.

@rgsl888prabhu
Copy link
Collaborator Author

@jakirkham May I get another set of review and also had few questions on previous reviews

Copy link
Contributor

@akifcorduk akifcorduk left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good on cpp side.

Copy link
Contributor

@bdice bdice left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

One small suggestion to clarify a comment, otherwise LGTM. We should land this soon for 25.08.

rgsl888prabhu and others added 2 commits July 28, 2025 11:05
@rgsl888prabhu
Copy link
Collaborator Author

/merge

@rapids-bot rapids-bot bot merged commit 7441095 into NVIDIA:branch-25.08 Jul 28, 2025
281 of 286 checks passed
@jakirkham
Copy link

Thanks Ram and thanks to all the reviewers! 🙏

Agree this looks good

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

Labels

improvement Improves an existing functionality non-breaking Introduces a non-breaking change

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Dropping CUDA 11?

9 participants