Skip to content

Commit

Permalink
remove all remaining uses of cugraph-ops (#4784)
Browse files Browse the repository at this point in the history
This repo should no longer need any build-time dependencies on cloning the `cugraph-ops` source code or pulling in its packages, as of these PRs:

* #4744
* #4765

This PR proposes the following:

* removing CI configuration related to cloning the `cugraph-ops` repo
* removing CMake options related to `cugraph-ops`
  - `ALLOW_CLONE_CUGRAPH_OPS`
  - `CUGRAPH_EXCLUDE_CUGRAPH_OPS_FROM_ALL`
  - `CUGRAPH_USE_CUGRAPH_OPS_STATIC`
  - `USE_CUGRAPH_OPS`
* removing dependencies on `pylibcugraphops` / `libcugraphops` in development scripts, conda recipes
* removing the `cugraph-ops` docs, and references to them in other docs
* removing unused source file `cpp/src/utilities/cugraph_ops_utils.hpp`
* removing the `cugraph_ops` pytest marker

## Notes for Reviewers

### Benefits of these changes

* faster CI
* simplifies the pending work to introduce `libcugraph` wheel packages (rapidsai/rapids-wheels-planning#53)

### How I identified these changes

```shell
git grep -i '_ops'
git grep -i '\-ops'
git grep -i 'cugraphops'
```

### Why is this so big?

I'd originally wanted to leave the docs-building stuff in place, but saw `docs-build` CI here failing because docs haven't been built from the `cugraph-ops` repo yet:

https://github.com/rapidsai/cugraph/blob/c5d3d231c9cac361bf51246c13440a42eeda93b9/build.sh#L334-L341

Talked offline with @acostadon and @ChuckHastings , and we agreed that those docs could just be removed here.

### What is intentionally being left?

* references in licenses (as some code from `cugraph-ops` is vendored here)
* references in the docs for the GNN packages (`cugraph-dgl`, `cugraph-pyg`, `pylibwholegraph`), as those do still rely on `cugraph-ops` (their docs will eventually move out of this repo)

Authors:
  - James Lamb (https://github.com/jameslamb)

Approvers:
  - Kyle Edwards (https://github.com/KyleFromNVIDIA)
  - Alex Barghi (https://github.com/alexbarghi-nv)
  - Chuck Hastings (https://github.com/ChuckHastings)

URL: #4784
  • Loading branch information
jameslamb authored Dec 4, 2024
1 parent 94c6ee4 commit 5a26158
Show file tree
Hide file tree
Showing 33 changed files with 7 additions and 393 deletions.
6 changes: 0 additions & 6 deletions .github/workflows/build.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -76,9 +76,6 @@ jobs:
sha: ${{ inputs.sha }}
date: ${{ inputs.date }}
script: ci/build_wheel_pylibcugraph.sh
extra-repo: rapidsai/cugraph-ops
extra-repo-sha: branch-25.02
extra-repo-deploy-key: CUGRAPH_OPS_SSH_PRIVATE_DEPLOY_KEY
node_type: cpu32
wheel-publish-pylibcugraph:
needs: wheel-build-pylibcugraph
Expand All @@ -100,9 +97,6 @@ jobs:
sha: ${{ inputs.sha }}
date: ${{ inputs.date }}
script: ci/build_wheel_cugraph.sh
extra-repo: rapidsai/cugraph-ops
extra-repo-sha: branch-25.02
extra-repo-deploy-key: CUGRAPH_OPS_SSH_PRIVATE_DEPLOY_KEY
wheel-publish-cugraph:
needs: wheel-build-cugraph
secrets: inherit
Expand Down
7 changes: 0 additions & 7 deletions .github/workflows/pr.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -142,9 +142,6 @@ jobs:
with:
build_type: pull-request
script: ci/build_wheel_pylibcugraph.sh
extra-repo: rapidsai/cugraph-ops
extra-repo-sha: branch-25.02
extra-repo-deploy-key: CUGRAPH_OPS_SSH_PRIVATE_DEPLOY_KEY
node_type: cpu32
wheel-tests-pylibcugraph:
needs: [wheel-build-pylibcugraph, changed-files]
Expand All @@ -161,9 +158,6 @@ jobs:
with:
build_type: pull-request
script: ci/build_wheel_cugraph.sh
extra-repo: rapidsai/cugraph-ops
extra-repo-sha: branch-25.02
extra-repo-deploy-key: CUGRAPH_OPS_SSH_PRIVATE_DEPLOY_KEY
wheel-tests-cugraph:
needs: [wheel-build-cugraph, changed-files]
secrets: inherit
Expand All @@ -180,7 +174,6 @@ jobs:
arch: '["amd64"]'
cuda: '["12.5"]'
node_type: cpu32
extra-repo-deploy-key: CUGRAPH_OPS_SSH_PRIVATE_DEPLOY_KEY
build_command: |
sccache -z;
build-all --verbose -j$(nproc --ignore=1) -DBUILD_CUGRAPH_MG_TESTS=ON;
Expand Down
1 change: 0 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,6 @@
- [libcugraph (C/C++/CUDA)](./readme_pages/libcugraph.md)
- [nx-cugraph](https://rapids.ai/nx-cugraph/)
- [cugraph-service](./readme_pages/cugraph_service.md)
- [cugraph-ops](./readme_pages/cugraph_ops.md)
- API Docs
- Python
- [Python Nightly](https://docs.rapids.ai/api/cugraph/nightly/)
Expand Down
2 changes: 1 addition & 1 deletion ci/build_wheel_cugraph.sh
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ case "${RAPIDS_CUDA_VERSION}" in
;;
esac

export SKBUILD_CMAKE_ARGS="-DDETECT_CONDA_ENV=OFF;-DFIND_CUGRAPH_CPP=OFF;-DCPM_cugraph-ops_SOURCE=${GITHUB_WORKSPACE}/cugraph-ops/${EXTRA_CMAKE_ARGS}"
export SKBUILD_CMAKE_ARGS="-DDETECT_CONDA_ENV=OFF;-DFIND_CUGRAPH_CPP=OFF${EXTRA_CMAKE_ARGS}"
export SKBUILD_BUILD_TOOL_ARGS="-j${PARALLEL_LEVEL};-l${PARALLEL_LEVEL}"

./ci/build_wheel.sh cugraph ${package_dir}
Expand Down
2 changes: 1 addition & 1 deletion ci/build_wheel_pylibcugraph.sh
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ case "${RAPIDS_CUDA_VERSION}" in
;;
esac

export SKBUILD_CMAKE_ARGS="-DDETECT_CONDA_ENV=OFF;-DFIND_CUGRAPH_CPP=OFF;-DCPM_cugraph-ops_SOURCE=${GITHUB_WORKSPACE}/cugraph-ops/${EXTRA_CMAKE_ARGS}"
export SKBUILD_CMAKE_ARGS="-DDETECT_CONDA_ENV=OFF;-DFIND_CUGRAPH_CPP=OFF${EXTRA_CMAKE_ARGS}"
export SKBUILD_BUILD_TOOL_ARGS="-j${PARALLEL_LEVEL};-l${PARALLEL_LEVEL}"

./ci/build_wheel.sh pylibcugraph ${package_dir}
Expand Down
4 changes: 0 additions & 4 deletions ci/release/update-version.sh
Original file line number Diff line number Diff line change
Expand Up @@ -57,12 +57,10 @@ DEPENDENCIES=(
dask-cuda
dask-cudf
libcudf
libcugraphops
libraft
libraft-headers
librmm
pylibcugraph
pylibcugraphops
pylibwholegraph
pylibraft
pyraft
Expand Down Expand Up @@ -98,8 +96,6 @@ done
# CI files
for FILE in .github/workflows/*.yaml; do
sed_runner "/shared-workflows/ s/@.*/@branch-${NEXT_SHORT_TAG}/g" "${FILE}"
# Wheel builds clone cugraph-ops, update its branch
sed_runner "s/extra-repo-sha: branch-.*/extra-repo-sha: branch-${NEXT_SHORT_TAG}/g" "${FILE}"
# Wheel builds install dask-cuda from source, update its branch
sed_runner "s/dask-cuda.git@branch-[0-9][0-9].[0-9][0-9]/dask-cuda.git@branch-${NEXT_SHORT_TAG}/g" "${FILE}"
done
Expand Down
2 changes: 0 additions & 2 deletions conda/environments/all_cuda-118_arch-x86_64.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,6 @@ dependencies:
- graphviz
- ipython
- libcudf==25.2.*,>=0.0.0a0
- libcugraphops==25.2.*,>=0.0.0a0
- libraft-headers==25.2.*,>=0.0.0a0
- libraft==25.2.*,>=0.0.0a0
- librmm==25.2.*,>=0.0.0a0
Expand All @@ -45,7 +44,6 @@ dependencies:
- pre-commit
- pydantic
- pydata-sphinx-theme
- pylibcugraphops==25.2.*,>=0.0.0a0
- pylibraft==25.2.*,>=0.0.0a0
- pylibwholegraph==25.2.*,>=0.0.0a0
- pytest
Expand Down
2 changes: 0 additions & 2 deletions conda/environments/all_cuda-125_arch-x86_64.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,6 @@ dependencies:
- ipython
- libcublas-dev
- libcudf==25.2.*,>=0.0.0a0
- libcugraphops==25.2.*,>=0.0.0a0
- libcurand-dev
- libcusolver-dev
- libcusparse-dev
Expand All @@ -50,7 +49,6 @@ dependencies:
- pre-commit
- pydantic
- pydata-sphinx-theme
- pylibcugraphops==25.2.*,>=0.0.0a0
- pylibraft==25.2.*,>=0.0.0a0
- pylibwholegraph==25.2.*,>=0.0.0a0
- pytest
Expand Down
2 changes: 0 additions & 2 deletions conda/recipes/libcugraph/meta.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,6 @@ requirements:
- cuda-version ={{ cuda_version }}
- doxygen {{ doxygen_version }}
- libcudf ={{ minor_version }}
- libcugraphops ={{ minor_version }}
- libraft ={{ minor_version }}
- libraft-headers ={{ minor_version }}
- librmm ={{ minor_version }}
Expand Down Expand Up @@ -114,7 +113,6 @@ outputs:
- libcusolver
- libcusparse
{% endif %}
- libcugraphops ={{ minor_version }}
- libraft ={{ minor_version }}
- libraft-headers ={{ minor_version }}
- librmm ={{ minor_version }}
Expand Down
2 changes: 1 addition & 1 deletion cpp/.clang-format
Original file line number Diff line number Diff line change
Expand Up @@ -77,7 +77,7 @@ IncludeCategories:
Priority: 1
- Regex: '^<cugraph_c/' # cuGraph C API includes
Priority: 2
- Regex: '^<(cugraph|cugraph-ops|cugraph_etl)/' # cuGraph includes
- Regex: '^<(cugraph|cugraph_etl)/' # cuGraph includes
Priority: 3
- Regex: '^<(cudf|raft|cuml|kvikio|cumlprims)' # Other RAPIDS includes
Priority: 4
Expand Down
1 change: 0 additions & 1 deletion cpp/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -484,7 +484,6 @@ target_link_libraries(cugraph
rmm::rmm
raft::raft
$<BUILD_LOCAL_INTERFACE:CUDA::toolkit>
$<TARGET_NAME_IF_EXISTS:cugraph-ops::cugraph-ops++>
PRIVATE
${COMPILED_RAFT_LIB}
cuco::cuco
Expand Down
44 changes: 0 additions & 44 deletions cpp/src/utilities/cugraph_ops_utils.hpp

This file was deleted.

32 changes: 0 additions & 32 deletions dependencies.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -20,8 +20,6 @@ files:
- depends_on_dask_cudf
- depends_on_pylibraft
- depends_on_raft_dask
# Deprecate pylibcugraphops
- depends_on_pylibcugraphops
- depends_on_pylibwholegraph
- depends_on_cupy
- depends_on_pytorch
Expand All @@ -41,8 +39,6 @@ files:
- cuda_version
- docs
- py_version
# Deprecate pylibcugraphops
- depends_on_pylibcugraphops
test_cpp:
output: none
includes:
Expand Down Expand Up @@ -295,8 +291,6 @@ dependencies:
- c-compiler
- cxx-compiler
- libcudf==25.2.*,>=0.0.0a0
# Deprecate libcugraphops
- libcugraphops==25.2.*,>=0.0.0a0
- libraft-headers==25.2.*,>=0.0.0a0
- libraft==25.2.*,>=0.0.0a0
- librmm==25.2.*,>=0.0.0a0
Expand Down Expand Up @@ -710,32 +704,6 @@ dependencies:
- pylibcugraph-cu11==25.2.*,>=0.0.0a0
- {matrix: null, packages: [*pylibcugraph_unsuffixed]}

# deprecate pylibcugraphops
depends_on_pylibcugraphops:
common:
- output_types: conda
packages:
- &pylibcugraphops_unsuffixed pylibcugraphops==25.2.*,>=0.0.0a0
- output_types: requirements
packages:
# pip recognizes the index as a global option for the requirements.txt file
- --extra-index-url=https://pypi.nvidia.com
- --extra-index-url=https://pypi.anaconda.org/rapidsai-wheels-nightly/simple
specific:
- output_types: [requirements, pyproject]
matrices:
- matrix:
cuda: "12.*"
cuda_suffixed: "true"
packages:
- pylibcugraphops-cu12==25.2.*,>=0.0.0a0
- matrix:
cuda: "11.*"
cuda_suffixed: "true"
packages:
- pylibcugraphops-cu11==25.2.*,>=0.0.0a0
- {matrix: null, packages: [*pylibcugraphops_unsuffixed]}

depends_on_cupy:
common:
- output_types: conda
Expand Down
2 changes: 0 additions & 2 deletions docs/cugraph/source/api_docs/cugraph-ops/c_cpp/index.rst

This file was deleted.

11 changes: 0 additions & 11 deletions docs/cugraph/source/api_docs/cugraph-ops/index.rst

This file was deleted.

24 changes: 0 additions & 24 deletions docs/cugraph/source/api_docs/cugraph-ops/python/dimenet.rst

This file was deleted.

34 changes: 0 additions & 34 deletions docs/cugraph/source/api_docs/cugraph-ops/python/graph_types.rst

This file was deleted.

13 changes: 0 additions & 13 deletions docs/cugraph/source/api_docs/cugraph-ops/python/index.rst

This file was deleted.

Loading

0 comments on commit 5a26158

Please sign in to comment.