diff --git a/ci/build_cpp.sh b/ci/build_cpp.sh index d0d13f99448..029aea22540 100755 --- a/ci/build_cpp.sh +++ b/ci/build_cpp.sh @@ -7,12 +7,20 @@ source rapids-env-update export CMAKE_GENERATOR=Ninja +LIBRMM_CHANNEL=$(rapids-get-pr-conda-artifact rmm 1095 cpp) +LIBCUDF_CHANNEL=$(rapids-get-pr-conda-artifact cudf 14365 cpp) +LIBRAFT_CHANNEL=$(rapids-get-pr-conda-artifact raft 1964 cpp) + rapids-print-env version=$(rapids-generate-version) rapids-logger "Begin cpp build" -RAPIDS_PACKAGE_VERSION=${version} rapids-conda-retry mambabuild conda/recipes/libcugraph +RAPIDS_PACKAGE_VERSION=${version} rapids-conda-retry mambabuild \ + --channel "${LIBRMM_CHANNEL}" \ + --channel "${LIBCUDF_CHANNEL}" \ + --channel "${LIBRAFT_CHANNEL}" \ + conda/recipes/libcugraph rapids-upload-conda-to-s3 cpp diff --git a/ci/build_docs.sh b/ci/build_docs.sh index 3f97f652d41..ed8019a0647 100755 --- a/ci/build_docs.sh +++ b/ci/build_docs.sh @@ -20,9 +20,22 @@ rapids-logger "Downloading artifacts from previous jobs" CPP_CHANNEL=$(rapids-download-conda-from-s3 cpp) PYTHON_CHANNEL=$(rapids-download-conda-from-s3 python) +LIBRMM_CHANNEL=$(rapids-get-pr-conda-artifact rmm 1095 cpp) +RMM_CHANNEL=$(rapids-get-pr-conda-artifact rmm 1095 python) +LIBCUDF_CHANNEL=$(rapids-get-pr-conda-artifact cudf 14365 cpp) +CUDF_CHANNEL=$(rapids-get-pr-conda-artifact cudf 14365 python) +LIBRAFT_CHANNEL=$(rapids-get-pr-conda-artifact raft 1964 cpp) +RAFT_CHANNEL=$(rapids-get-pr-conda-artifact raft 1964 python) + rapids-mamba-retry install \ --channel "${CPP_CHANNEL}" \ --channel "${PYTHON_CHANNEL}" \ + --channel "${LIBRMM_CHANNEL}" \ + --channel "${RMM_CHANNEL}" \ + --channel "${LIBCUDF_CHANNEL}" \ + --channel "${CUDF_CHANNEL}" \ + --channel "${LIBRAFT_CHANNEL}" \ + --channel "${RAFT_CHANNEL}" \ libcugraph \ pylibcugraph \ cugraph \ diff --git a/ci/build_python.sh b/ci/build_python.sh index 90a40c539ff..57860b8c837 100755 --- a/ci/build_python.sh +++ b/ci/build_python.sh @@ -11,6 +11,13 @@ rapids-print-env CPP_CHANNEL=$(rapids-download-conda-from-s3 cpp) +LIBRMM_CHANNEL=$(rapids-get-pr-conda-artifact rmm 1095 cpp) +RMM_CHANNEL=$(rapids-get-pr-conda-artifact rmm 1095 python) +LIBCUDF_CHANNEL=$(rapids-get-pr-conda-artifact cudf 14365 cpp) +CUDF_CHANNEL=$(rapids-get-pr-conda-artifact cudf 14365 python) +LIBRAFT_CHANNEL=$(rapids-get-pr-conda-artifact raft 1964 cpp) +RAFT_CHANNEL=$(rapids-get-pr-conda-artifact raft 1964 python) + version=$(rapids-generate-version) git_commit=$(git rev-parse HEAD) export RAPIDS_PACKAGE_VERSION=${version} @@ -19,7 +26,7 @@ echo "${version}" > VERSION rapids-logger "Begin py build" package_dir="python" -for package_name in pylibcugraph cugraph nx-cugraph cugraph-pyg cugraph-dgl; do +for package_name in pylibcugraph cugraph nx-cugraph cugraph-pyg cugraph-dgl; do underscore_package_name=$(echo "${package_name}" | tr "-" "_") sed -i "/^__git_commit__/ s/= .*/= \"${git_commit}\"/g" "${package_dir}/${package_name}/${underscore_package_name}/_version.py" done @@ -29,12 +36,24 @@ done rapids-conda-retry mambabuild \ --no-test \ --channel "${CPP_CHANNEL}" \ + --channel "${LIBRMM_CHANNEL}" \ + --channel "${RMM_CHANNEL}" \ + --channel "${LIBCUDF_CHANNEL}" \ + --channel "${CUDF_CHANNEL}" \ + --channel "${LIBRAFT_CHANNEL}" \ + --channel "${RAFT_CHANNEL}" \ conda/recipes/pylibcugraph rapids-conda-retry mambabuild \ --no-test \ --channel "${CPP_CHANNEL}" \ --channel "${RAPIDS_CONDA_BLD_OUTPUT_DIR}" \ + --channel "${LIBRMM_CHANNEL}" \ + --channel "${RMM_CHANNEL}" \ + --channel "${LIBCUDF_CHANNEL}" \ + --channel "${CUDF_CHANNEL}" \ + --channel "${LIBRAFT_CHANNEL}" \ + --channel "${RAFT_CHANNEL}" \ conda/recipes/cugraph # NOTE: nothing in nx-cugraph is CUDA-specific, but it is built on each CUDA @@ -45,6 +64,12 @@ rapids-conda-retry mambabuild \ --no-test \ --channel "${CPP_CHANNEL}" \ --channel "${RAPIDS_CONDA_BLD_OUTPUT_DIR}" \ + --channel "${LIBRMM_CHANNEL}" \ + --channel "${RMM_CHANNEL}" \ + --channel "${LIBCUDF_CHANNEL}" \ + --channel "${CUDF_CHANNEL}" \ + --channel "${LIBRAFT_CHANNEL}" \ + --channel "${RAFT_CHANNEL}" \ conda/recipes/nx-cugraph # NOTE: nothing in the cugraph-service packages are CUDA-specific, but they are @@ -59,6 +84,12 @@ rapids-conda-retry mambabuild \ --no-test \ --channel "${CPP_CHANNEL}" \ --channel "${RAPIDS_CONDA_BLD_OUTPUT_DIR}" \ + --channel "${LIBRMM_CHANNEL}" \ + --channel "${RMM_CHANNEL}" \ + --channel "${LIBCUDF_CHANNEL}" \ + --channel "${CUDF_CHANNEL}" \ + --channel "${LIBRAFT_CHANNEL}" \ + --channel "${RAFT_CHANNEL}" \ conda/recipes/cugraph-service RAPIDS_CUDA_MAJOR="${RAPIDS_CUDA_VERSION%%.*}" @@ -72,6 +103,12 @@ if [[ ${RAPIDS_CUDA_MAJOR} == "11" ]]; then --channel pyg \ --channel pytorch \ --channel pytorch-nightly \ + --channel "${LIBRMM_CHANNEL}" \ + --channel "${RMM_CHANNEL}" \ + --channel "${LIBCUDF_CHANNEL}" \ + --channel "${CUDF_CHANNEL}" \ + --channel "${LIBRAFT_CHANNEL}" \ + --channel "${RAFT_CHANNEL}" \ conda/recipes/cugraph-pyg # Only CUDA 11 is supported right now due to PyTorch requirement. @@ -82,6 +119,12 @@ if [[ ${RAPIDS_CUDA_MAJOR} == "11" ]]; then --channel dglteam \ --channel pytorch \ --channel pytorch-nightly \ + --channel "${LIBRMM_CHANNEL}" \ + --channel "${RMM_CHANNEL}" \ + --channel "${LIBCUDF_CHANNEL}" \ + --channel "${CUDF_CHANNEL}" \ + --channel "${LIBRAFT_CHANNEL}" \ + --channel "${RAFT_CHANNEL}" \ conda/recipes/cugraph-dgl fi diff --git a/ci/test_cpp.sh b/ci/test_cpp.sh index 95bc55c212a..b3bc7a0bafb 100755 --- a/ci/test_cpp.sh +++ b/ci/test_cpp.sh @@ -19,6 +19,11 @@ conda activate test set -u CPP_CHANNEL=$(rapids-download-conda-from-s3 cpp) + +LIBRMM_CHANNEL=$(rapids-get-pr-conda-artifact rmm 1095 cpp) +LIBCUDF_CHANNEL=$(rapids-get-pr-conda-artifact cudf 14365 cpp) +LIBRAFT_CHANNEL=$(rapids-get-pr-conda-artifact raft 1964 cpp) + RAPIDS_TESTS_DIR=${RAPIDS_TESTS_DIR:-"${PWD}/test-results"}/ mkdir -p "${RAPIDS_TESTS_DIR}" @@ -26,6 +31,9 @@ rapids-print-env rapids-mamba-retry install \ --channel "${CPP_CHANNEL}" \ + --channel "${LIBRMM_CHANNEL}" \ + --channel "${LIBCUDF_CHANNEL}" \ + --channel "${LIBRAFT_CHANNEL}" \ libcugraph libcugraph_etl libcugraph-tests rapids-logger "Check GPU usage" diff --git a/ci/test_notebooks.sh b/ci/test_notebooks.sh index 653f23f947d..5f8e2a4d0d2 100755 --- a/ci/test_notebooks.sh +++ b/ci/test_notebooks.sh @@ -24,9 +24,22 @@ rapids-logger "Downloading artifacts from previous jobs" CPP_CHANNEL=$(rapids-download-conda-from-s3 cpp) PYTHON_CHANNEL=$(rapids-download-conda-from-s3 python) +LIBRMM_CHANNEL=$(rapids-get-pr-conda-artifact rmm 1095 cpp) +RMM_CHANNEL=$(rapids-get-pr-conda-artifact rmm 1095 python) +LIBCUDF_CHANNEL=$(rapids-get-pr-conda-artifact cudf 14365 cpp) +CUDF_CHANNEL=$(rapids-get-pr-conda-artifact cudf 14365 python) +LIBRAFT_CHANNEL=$(rapids-get-pr-conda-artifact raft 1964 cpp) +RAFT_CHANNEL=$(rapids-get-pr-conda-artifact raft 1964 python) + rapids-mamba-retry install \ --channel "${CPP_CHANNEL}" \ --channel "${PYTHON_CHANNEL}" \ + --channel "${LIBRMM_CHANNEL}" \ + --channel "${RMM_CHANNEL}" \ + --channel "${LIBCUDF_CHANNEL}" \ + --channel "${CUDF_CHANNEL}" \ + --channel "${LIBRAFT_CHANNEL}" \ + --channel "${RAFT_CHANNEL}" \ libcugraph pylibcugraph cugraph NBTEST="$(realpath "$(dirname "$0")/utils/nbtest.sh")" diff --git a/ci/test_python.sh b/ci/test_python.sh index 1690ce2f15b..af36913b03b 100755 --- a/ci/test_python.sh +++ b/ci/test_python.sh @@ -22,6 +22,13 @@ rapids-logger "Downloading artifacts from previous jobs" CPP_CHANNEL=$(rapids-download-conda-from-s3 cpp) PYTHON_CHANNEL=$(rapids-download-conda-from-s3 python) +LIBRMM_CHANNEL=$(rapids-get-pr-conda-artifact rmm 1095 cpp) +RMM_CHANNEL=$(rapids-get-pr-conda-artifact rmm 1095 python) +LIBCUDF_CHANNEL=$(rapids-get-pr-conda-artifact cudf 14365 cpp) +CUDF_CHANNEL=$(rapids-get-pr-conda-artifact cudf 14365 python) +LIBRAFT_CHANNEL=$(rapids-get-pr-conda-artifact raft 1964 cpp) +RAFT_CHANNEL=$(rapids-get-pr-conda-artifact raft 1964 python) + RAPIDS_TESTS_DIR=${RAPIDS_TESTS_DIR:-"${PWD}/test-results"} RAPIDS_COVERAGE_DIR=${RAPIDS_COVERAGE_DIR:-"${PWD}/coverage-results"} mkdir -p "${RAPIDS_TESTS_DIR}" "${RAPIDS_COVERAGE_DIR}" @@ -31,6 +38,12 @@ rapids-print-env rapids-mamba-retry install \ --channel "${CPP_CHANNEL}" \ --channel "${PYTHON_CHANNEL}" \ + --channel "${LIBRMM_CHANNEL}" \ + --channel "${RMM_CHANNEL}" \ + --channel "${LIBCUDF_CHANNEL}" \ + --channel "${CUDF_CHANNEL}" \ + --channel "${LIBRAFT_CHANNEL}" \ + --channel "${RAFT_CHANNEL}" \ libcugraph \ pylibcugraph \ cugraph \ @@ -152,6 +165,12 @@ if [[ "${RAPIDS_CUDA_VERSION}" == "11.8.0" ]]; then --channel pytorch-nightly \ --channel dglteam/label/cu118 \ --channel nvidia \ + --channel "${LIBRMM_CHANNEL}" \ + --channel "${RMM_CHANNEL}" \ + --channel "${LIBCUDF_CHANNEL}" \ + --channel "${CUDF_CHANNEL}" \ + --channel "${LIBRAFT_CHANNEL}" \ + --channel "${RAFT_CHANNEL}" \ libcugraph \ pylibcugraph \ pylibcugraphops \ @@ -203,16 +222,28 @@ if [[ "${RAPIDS_CUDA_VERSION}" == "11.8.0" ]]; then --channel pyg \ --channel pytorch \ --channel nvidia \ + --channel "${LIBRMM_CHANNEL}" \ + --channel "${RMM_CHANNEL}" \ + --channel "${LIBCUDF_CHANNEL}" \ + --channel "${CUDF_CHANNEL}" \ + --channel "${LIBRAFT_CHANNEL}" \ + --channel "${RAFT_CHANNEL}" \ 'pyg=2.3' \ 'pytorch=2.0.0' \ 'pytorch-cuda=11.8' - + # Install pyg dependencies (which requires pip) pip install pyg_lib torch_scatter torch_sparse torch_cluster torch_spline_conv -f https://data.pyg.org/whl/torch-2.0.0+cu118.html rapids-mamba-retry install \ --channel "${CPP_CHANNEL}" \ --channel "${PYTHON_CHANNEL}" \ + --channel "${LIBRMM_CHANNEL}" \ + --channel "${RMM_CHANNEL}" \ + --channel "${LIBCUDF_CHANNEL}" \ + --channel "${CUDF_CHANNEL}" \ + --channel "${LIBRAFT_CHANNEL}" \ + --channel "${RAFT_CHANNEL}" \ libcugraph \ pylibcugraph \ pylibcugraphops \