-
Notifications
You must be signed in to change notification settings - Fork 4
Switch RAPIDS to static linking of libcudart by default #235
Copy link
Copy link
Open
Description
Summary
This issue tracks the effort to switch all RAPIDS libraries from dynamic linking (cuda-cudart) to static linking (cuda-cudart_static) of the CUDA runtime by default. This is an implementation of #4.
Motivation
- Simplifies deployment by embedding CUDA runtime into binaries
- Eliminates runtime dependency on
cuda-cudartconda packages - Reduces potential for CUDA version mismatches at runtime
Changes Required Per Repository
- CMake: Set
CUDA_STATIC_RUNTIME=ONas default incpp/CMakeLists.txt - Build scripts: Update
build.shdefault toCUDA_STATIC_RUNTIME=ON - Conda recipes: Remove
cuda-cudartfrom run requirements (keepcuda-cudart-devin host)
Rollout Order (Bottom-Up by Dependency)
| Phase | Repositories |
|---|---|
| 1 | rmm |
| 2 | kvikio, raft, cuvs, cudf |
| 3 | cumlprims_mg, cuml, cugraph, ucxx, rapidsmpf |
| 4 | cugraph-gnn, cucim, cuopt |
Tracking
- rmm - Default to static linking of libcudart rmm#2178
- Reverted due to breaking cuDF Python stream tests, @vyasr is investigating
- kvikio - Default to static linking of libcudart kvikio#885
- raft - Default to static linking of libcudart raft#2890
- cuvs - Default to static linking of libcudart cuvs#1627
- cudf - Default to static linking of libcudart cudf#20814
- Blocked by cudf stream testing
- cumlprims_mg - Default to static linking of libcudart cumlprims_mg#30
- cuml - Default to static linking of libcudart cuml#7580
- cugraph - Default to static linking of libcudart cugraph#5366
- ucxx - Use static linkage for CUDA runtime ucxx#559
- rapidsmpf - Use static linkage for CUDA runtime rapidsmpf#725
- cugraph-gnn - Use static linkage for CUDA runtime cugraph-gnn#369
- cucim - Use static linkage for CUDA runtime cucim#992
- cuopt - Use static linkage for CUDA runtime NVIDIA/cuopt#680
- rapids-cmake - Default to static linking of libcudart rapids-cmake#949
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels