Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 1 addition & 7 deletions .github/workflows/build.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,6 @@ jobs:
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.

build_type: ${{ inputs.build_type || 'branch' }}
branch: ${{ inputs.branch }}
date: ${{ inputs.date }}
Expand All @@ -56,7 +55,6 @@ jobs:
secrets: inherit
uses: rapidsai/shared-workflows/.github/workflows/conda-python-build.yaml@branch-25.08
with:
matrix_filter: map(select((.CUDA_VER | startswith("12")) and .PY_VER != "3.13"))
build_type: ${{ inputs.build_type || 'branch' }}
branch: ${{ inputs.branch }}
date: ${{ inputs.date }}
Expand All @@ -80,7 +78,6 @@ jobs:
sha: ${{ inputs.sha }}
date: ${{ inputs.date }}
script: ci/build_wheel_cuopt_mps_parser.sh
matrix_filter: map(select((.CUDA_VER | startswith("12"))))
package-name: cuopt_mps_parser
package-type: python
append-cuda-suffix: false
Expand All @@ -107,7 +104,7 @@ jobs:
script: ci/build_wheel_libcuopt.sh
package-name: libcuopt
package-type: cpp
matrix_filter: map(select((.CUDA_VER | startswith("12")) and .PY_VER == "3.12"))
matrix_filter: group_by([.ARCH, (.CUDA_VER|split(".")|map(tonumber)|.[0])]) | map(max_by(.PY_VER|split(".")|map(tonumber)))
wheel-publish-libcuopt:
needs: wheel-build-libcuopt
secrets: inherit
Expand All @@ -124,7 +121,6 @@ jobs:
secrets: inherit
uses: rapidsai/shared-workflows/.github/workflows/wheels-build.yaml@branch-25.08
with:
matrix_filter: map(select((.CUDA_VER | startswith("12"))))
build_type: ${{ inputs.build_type || 'branch' }}
branch: ${{ inputs.branch }}
sha: ${{ inputs.sha }}
Expand All @@ -148,7 +144,6 @@ jobs:
secrets: inherit
uses: rapidsai/shared-workflows/.github/workflows/wheels-build.yaml@branch-25.08
with:
matrix_filter: map(select((.CUDA_VER | startswith("12"))))
build_type: ${{ inputs.build_type || 'branch' }}
branch: ${{ inputs.branch }}
sha: ${{ inputs.sha }}
Expand Down Expand Up @@ -192,7 +187,6 @@ jobs:
sha: ${{ inputs.sha }}
date: ${{ inputs.date }}
script: ci/build_wheel_cuopt_sh_client.sh
matrix_filter: map(select((.CUDA_VER | startswith("12"))))
package-name: cuopt_sh_client
package-type: python
append-cuda-suffix: false
Expand Down
23 changes: 1 addition & 22 deletions .github/workflows/pr.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -122,7 +122,6 @@ jobs:
uses: rapidsai/shared-workflows/.github/workflows/conda-cpp-build.yaml@branch-25.08
with:
build_type: pull-request
matrix_filter: map(select((.CUDA_VER | startswith("12"))))
script: ci/build_cpp.sh
conda-cpp-tests:
needs: [conda-cpp-build, changed-files]
Expand All @@ -131,15 +130,13 @@ jobs:
#if: fromJSON(needs.changed-files.outputs.changed_file_groups).test_cpp
with:
build_type: pull-request
matrix_filter: map(select((.CUDA_VER | startswith("12"))))
script: ci/test_cpp.sh
conda-python-build:
needs: conda-cpp-build
secrets: inherit
uses: rapidsai/shared-workflows/.github/workflows/conda-python-build.yaml@branch-25.08
with:
build_type: pull-request
matrix_filter: map(select((.CUDA_VER | startswith("12"))))
script: ci/build_python.sh
conda-python-tests:
needs: [conda-python-build, changed-files]
Expand All @@ -149,7 +146,6 @@ jobs:
with:
run_codecov: false
build_type: pull-request
matrix_filter: map(select((.CUDA_VER | startswith("12"))))
script: ci/test_python.sh
docs-build:
needs: conda-python-build
Expand All @@ -163,17 +159,6 @@ jobs:
artifact-name: "cuopt_docs"
container_image: "rapidsai/ci-conda:25.08-latest"
script: "ci/build_docs.sh"
#conda-notebook-tests:
# needs: [conda-python-build, changed-files]
# secrets: inherit
# uses: rapidsai/shared-workflows/.github/workflows/custom-job.yaml@branch-25.08
# #if: fromJSON(needs.changed-files.outputs.changed_file_groups).test_notebooks
# with:
# build_type: pull-request
# node_type: "gpu-l4-latest-1"
# arch: "amd64"
# container_image: "rapidsai/ci-conda:cuda11.8.0-ubuntu22.04-py3.10"
# run_script: "ci/test_notebooks.sh"
wheel-build-cuopt-mps-parser:
secrets: inherit
uses: rapidsai/shared-workflows/.github/workflows/wheels-build.yaml@branch-25.08
Expand All @@ -183,14 +168,13 @@ jobs:
package-name: cuopt_mps_parser
package-type: python
append-cuda-suffix: false
matrix_filter: map(select((.CUDA_VER | startswith("12"))))
wheel-build-libcuopt:
needs: wheel-build-cuopt-mps-parser
secrets: inherit
uses: rapidsai/shared-workflows/.github/workflows/wheels-build.yaml@branch-25.08
with:
# build for every combination of arch and CUDA version, but only for the latest Python
matrix_filter: map(select((.CUDA_VER | startswith("12")) and .PY_VER == "3.12"))
matrix_filter: group_by([.ARCH, (.CUDA_VER|split(".")|map(tonumber)|.[0])]) | map(max_by(.PY_VER|split(".")|map(tonumber)))
package-type: cpp
package-name: libcuopt
build_type: pull-request
Expand All @@ -204,7 +188,6 @@ jobs:
script: ci/build_wheel_cuopt.sh
package-name: cuopt
package-type: python
matrix_filter: map(select((.CUDA_VER | startswith("12"))))
wheel-tests-cuopt:
needs: [wheel-build-cuopt, wheel-build-cuopt-mps-parser, changed-files]
secrets: inherit
Expand All @@ -213,7 +196,6 @@ jobs:
with:
build_type: pull-request
script: ci/test_wheel_cuopt.sh
matrix_filter: map(select((.CUDA_VER | startswith("12"))))
wheel-build-cuopt-server:
needs: wheel-build-cuopt
secrets: inherit
Expand All @@ -223,14 +205,12 @@ jobs:
script: ci/build_wheel_cuopt_server.sh
package-name: cuopt_server
package-type: python
matrix_filter: map(select((.CUDA_VER | startswith("12"))))
wheel-build-cuopt-sh-client:
secrets: inherit
uses: rapidsai/shared-workflows/.github/workflows/wheels-build.yaml@branch-25.08
with:
build_type: pull-request
script: ci/build_wheel_cuopt_sh_client.sh
matrix_filter: map(select((.CUDA_VER | startswith("12"))))
package-name: cuopt_sh_client
package-type: python
append-cuda-suffix: false
Expand All @@ -242,7 +222,6 @@ jobs:
with:
build_type: pull-request
script: ci/test_wheel_cuopt_server.sh
matrix_filter: map(select((.CUDA_VER | startswith("12"))))
test-self-hosted-server:
needs: [wheel-build-cuopt-server, changed-files]
secrets: inherit
Expand Down
4 changes: 0 additions & 4 deletions .github/workflows/test.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,6 @@ jobs:
branch: ${{ inputs.branch }}
date: ${{ inputs.date }}
sha: ${{ inputs.sha }}
matrix_filter: map(select((.CUDA_VER | startswith("12"))))
script: ci/test_cpp.sh
conda-python-tests:
secrets: inherit
Expand All @@ -51,7 +50,6 @@ jobs:
branch: ${{ inputs.branch }}
date: ${{ inputs.date }}
sha: ${{ inputs.sha }}
matrix_filter: map(select((.CUDA_VER | startswith("12"))))
script: ci/test_python.sh
wheel-tests-cuopt:
secrets: inherit
Expand All @@ -61,7 +59,6 @@ jobs:
branch: ${{ inputs.branch }}
date: ${{ inputs.date }}
sha: ${{ inputs.sha }}
matrix_filter: map(select((.CUDA_VER | startswith("12"))))
script: ci/test_wheel_cuopt.sh
wheel-tests-cuopt-server:
secrets: inherit
Expand All @@ -71,5 +68,4 @@ jobs:
branch: ${{ inputs.branch }}
date: ${{ inputs.date }}
sha: ${{ inputs.sha }}
matrix_filter: map(select((.CUDA_VER | startswith("12"))))
script: ci/test_wheel_cuopt_server.sh
9 changes: 2 additions & 7 deletions build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -268,13 +268,8 @@ if [ ${BUILD_ALL_GPU_ARCH} -eq 1 ]; then
echo "Building for *ALL* supported GPU architectures..."
else
if [ ${BUILD_CI_ONLY} -eq 1 ]; then
if [[ ${CUDA_VERSION} == 11* ]]; then
CUOPT_CMAKE_CUDA_ARCHITECTURES="70-real;80"
echo "Building for Volta and Ampere architectures..."
else
CUOPT_CMAKE_CUDA_ARCHITECTURES="RAPIDS"
echo "Building for Volta, Ampere and Hopper architectures..."
fi
CUOPT_CMAKE_CUDA_ARCHITECTURES="RAPIDS"
echo "Building for RAPIDS supported architectures..."
else
CUOPT_CMAKE_CUDA_ARCHITECTURES="NATIVE"
echo "Building for the architecture of the GPU in the system..."
Expand Down
9 changes: 1 addition & 8 deletions cpp/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -33,11 +33,6 @@ project(
LANGUAGES CXX CUDA C
)

if(${CMAKE_CUDA_COMPILER_VERSION} VERSION_LESS 12.0.0)
list(REMOVE_ITEM CMAKE_CUDA_ARCHITECTURES "90")
list(APPEND CMAKE_CUDA_ARCHITECTURES "80-virtual")
endif()

set(DEPENDENT_LIB_MAJOR_VERSION "25")
set(DEPENDENT_LIB_MINOR_VERSION "08")

Expand Down Expand Up @@ -222,9 +217,7 @@ set(CUOPT_PRIVATE_CUDA_LIBS
CUDA::cusolver
OpenMP::OpenMP_CXX)

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()
list(PREPEND CUOPT_PRIVATE_CUDA_LIBS CUDA::cublasLt)

add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/libmps_parser)
set(CMAKE_LIBRARY_PATH ${CMAKE_CURRENT_BINARY_DIR}/libmps_parser/)
Expand Down
6 changes: 2 additions & 4 deletions cpp/src/linear_programming/utilities/ping_pong_graph.cuh
Original file line number Diff line number Diff line change
Expand Up @@ -59,14 +59,12 @@ class ping_pong_graph_t {
if (!is_batch_mode_) {
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));
RAFT_CUDA_TRY(cudaGraphInstantiate(&even_instance, even_graph));
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));
RAFT_CUDA_TRY(cudaGraphInstantiate(&odd_instance, odd_graph));
odd_initialized = true;
RAFT_CUDA_TRY_NO_THROW(cudaGraphDestroy(odd_graph));
}
Expand Down
2 changes: 1 addition & 1 deletion cpp/src/mip/feasibility_jump/feasibility_jump.cu
Original file line number Diff line number Diff line change
Expand Up @@ -785,7 +785,7 @@ void fj_t<i_t, f_t>::run_step_device(const rmm::cuda_stream_view& climber_stream

if (use_graph) {
cudaStreamEndCapture(climber_stream, &graph);
cudaGraphInstantiate(&graph_instance, graph, NULL, NULL, 0);
cudaGraphInstantiate(&graph_instance, graph);
RAFT_CHECK_CUDA(climber_stream);
cudaGraphDestroy(graph);
graph_created = true;
Expand Down
4 changes: 2 additions & 2 deletions cpp/src/mip/presolve/load_balanced_bounds_presolve.cu
Original file line number Diff line number Diff line change
Expand Up @@ -203,10 +203,10 @@ bool build_graph(managed_stream_pool& streams,

if (graph_exec != nullptr) {
cudaGraphExecDestroy(graph_exec);
cudaGraphInstantiate(&graph_exec, graph, NULL, NULL, 0);
cudaGraphInstantiate(&graph_exec, graph);
RAFT_CHECK_CUDA(handle_ptr->get_stream());
} else {
cudaGraphInstantiate(&graph_exec, graph, NULL, NULL, 0);
cudaGraphInstantiate(&graph_exec, graph);
RAFT_CHECK_CUDA(handle_ptr->get_stream());
}

Expand Down
2 changes: 1 addition & 1 deletion cpp/src/routing/cuda_graph.cuh
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@ struct cuda_graph_t {
if (graph_created) { cudaGraphExecDestroy(instance); }
// Instantiate graphExec from graph. The error node and
// error message parameters are unused here.
cudaGraphInstantiate(&instance, graph, NULL, NULL, 0);
cudaGraphInstantiate(&instance, graph);
graph_created = true;
}
cudaGraphDestroy(graph);
Expand Down