Skip to content

Commit fc43e41

Browse files
committed
wheels: use cuda-toolkit runtime wheels
1 parent c0fd703 commit fc43e41

File tree

3 files changed

+55
-1
lines changed

3 files changed

+55
-1
lines changed

dependencies.yaml

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -160,7 +160,9 @@ files:
160160
extras:
161161
table: project
162162
includes:
163+
- cuda_wheels
163164
- depends_on_libraft
165+
- depends_on_librmm
164166
py_build_pylibcugraph:
165167
output: pyproject
166168
pyproject_dir: python/pylibcugraph
@@ -262,6 +264,30 @@ dependencies:
262264
- matrix:
263265
cuda: "12.*"
264266
packages:
267+
cuda_wheels:
268+
specific:
269+
- output_types: [pyproject, requirements]
270+
matrices:
271+
- matrix:
272+
cuda: "12.*"
273+
use_cuda_wheels: "true"
274+
packages:
275+
- cuda-toolkit[cublas,curand,cusolver,cusparse,nvjitlink]==12.*
276+
- matrix:
277+
cuda: "13.*"
278+
use_cuda_wheels: "true"
279+
packages:
280+
- cuda-toolkit[cublas,curand,cusolver,cusparse,nvjitlink]==13.*
281+
# if use_cuda_wheels=false is provided, do not add dependencies on any CUDA wheels
282+
# (e.g. for DLFW and pip devcontainers)
283+
- matrix:
284+
use_cuda_wheels: "false"
285+
packages:
286+
# if no matching matrix selectors passed, list the unsuffixed packages
287+
# (just as a source of documentation, as this populates pyproject.toml in source control)
288+
- matrix:
289+
packages:
290+
- cuda-toolkit[cublas,curand,cusolver,cusparse,nvjitlink]>=12,<14
265291
common_build:
266292
common:
267293
- output_types: [conda, requirements, pyproject]

python/libcugraph/CMakeLists.txt

Lines changed: 27 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# =============================================================================
22
# cmake-format: off
3-
# SPDX-FileCopyrightText: Copyright (c) 2025, NVIDIA CORPORATION.
3+
# SPDX-FileCopyrightText: Copyright (c) 2025-2026, NVIDIA CORPORATION.
44
# SPDX-License-Identifier: Apache-2.0
55
# cmake-format: on
66
# =============================================================================
@@ -42,3 +42,29 @@ set(CUGRAPH_COMPILE_CUVS ON)
4242
set(CUGRAPH_USE_CUVS_STATIC ON)
4343

4444
add_subdirectory(../../cpp cugraph-cpp)
45+
46+
# assumes libcugraph.so is installed 2 levels deep, e.g. site-packages/libcugraph/lib64/libcugraph.so
47+
if(CMAKE_CUDA_COMPILER_VERSION VERSION_GREATER_EQUAL 13.0)
48+
# starting with CTK 13 wheels, all libraries are grouped in this 'nvidia/cu13/lib' directory
49+
set(rpaths "$ORIGIN" "$ORIGIN/../../nvidia/cu13/lib")
50+
else()
51+
set(rpaths
52+
"$ORIGIN"
53+
"$ORIGIN/../../nvidia/cublas/lib"
54+
"$ORIGIN/../../nvidia/curand/lib"
55+
"$ORIGIN/../../nvidia/cusolver/lib"
56+
"$ORIGIN/../../nvidia/cusparse/lib"
57+
"$ORIGIN/../../nvidia/nvjitlink/lib"
58+
)
59+
endif()
60+
61+
set_property(
62+
TARGET cugraph
63+
PROPERTY INSTALL_RPATH ${rpaths}
64+
APPEND
65+
)
66+
set_property(
67+
TARGET cugraph_c
68+
PROPERTY INSTALL_RPATH ${rpaths}
69+
APPEND
70+
)

python/libcugraph/pyproject.toml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,9 @@ classifiers = [
2626
"Environment :: GPU :: NVIDIA CUDA",
2727
]
2828
dependencies = [
29+
"cuda-toolkit[cublas,curand,cusolver,cusparse,nvjitlink]>=12,<14",
2930
"libraft==26.4.*,>=0.0.0a0",
31+
"librmm==26.4.*,>=0.0.0a0",
3032
] # This list was generated by `rapids-dependency-file-generator`. To make changes, edit ../../dependencies.yaml and run `rapids-dependency-file-generator`.
3133

3234
[project.urls]

0 commit comments

Comments
 (0)