-
Notifications
You must be signed in to change notification settings - Fork 1k
adding wheel build for libcudf #15483
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Changes from all commits
Commits
Show all changes
122 commits
Select commit
Hold shift + click to select a range
a3de193
initial work on adding wheel build for libcudf
msarahan b43ad02
add auditwheel to libcudf wheels
msarahan d7dc523
check vyas' nvcomp rapids-cmake fix
msarahan 0bb4efe
try to get rid of lib64 folder for wheel build
msarahan 1443f8b
fix location of rapids-cmake customization
msarahan 4ccef6e
whitespace =(
msarahan a2e0ca0
renaming wheel workflows for conformance with conda
msarahan ef4b2c9
Try hiding logger symbols
vyasr ff0ac5a
Style
vyasr 1cdaef6
Ignore doxygen, which is confused by the attribute
vyasr 520c122
Add comment
vyasr 42f0b48
Fix formatting
vyasr b8ae5c3
Update library loading logic for the new nvcomp layout and make build…
vyasr ccf28f2
Fix loading logic
vyasr 466cacb
Fix paths again
vyasr c3c95e0
Merge remote-tracking branch 'upstream/branch-24.08' into libcudf-wheel
msarahan 97f4f95
fix calls to build_wheel.sh in cpp and python scripts
msarahan 98f3eb7
remove hack dependency on Vyas' rapids-cmake branch
msarahan 9fbab2e
add runtime pyarrow dep to libcudf
msarahan 1d2503d
add dependencies-file to libcudf wheel pyproject RBB section
msarahan 468301f
sort dependencies.yaml entries in build order
msarahan 494cdc3
Merge branch 'branch-24.08' of github.com:rapidsai/cudf into libcudf-…
msarahan 040e5cf
add build-backend to RBB tools section
msarahan 19c6e66
change build-backend to RBB in libcudf build-system
msarahan e94816d
update libarrow auditwheel exclusions
msarahan b4d3a62
add libcudf -cuXY logic for runtime dep
msarahan 75043e5
add dlpack target include directory
msarahan 470ee3d
remove -cuXY from devcontainers build
msarahan 2a44eb2
Update .github/workflows/pr.yaml
msarahan 1e759b6
copy cudf _version.py into libcudf wheel; fix naming convention in de…
msarahan 2aac5c1
Merge branch 'libcudf-wheel' of github.com:msarahan/cudf into libcudf…
msarahan 0885f3d
remove libcudf runtime req for devcontainer (requirements.txt)
msarahan 6b856ac
add comment about why spdlog is header-only
msarahan 32e7252
format comment
msarahan 9acd0f6
Merge branch 'branch-24.08' into libcudf-wheel
msarahan a5e2a3b
fix wheel build gha reference
msarahan a9ef9ff
fix missing libcudf wheel in polars test script
msarahan 06b67a8
elaborate assertion in test_rmm_option_on_import
msarahan 6f005d4
formatting
msarahan 8869f88
Merge branch 'branch-24.08' into libcudf-wheel
msarahan 5e80c6e
fix conflicts
jameslamb 943a08f
fix conflicts, stricter installs
jameslamb ecc1d35
Merge branch 'branch-24.08' into libcudf-wheel
jameslamb d4e8bea
fix test script
jameslamb 53125d7
get more logs for tests
jameslamb d5b3f59
Merge branch 'branch-24.08' of github.com:rapidsai/cudf into libcudf-…
jameslamb 42c5450
style
jameslamb 9d05dfc
fix extra
jameslamb 90b9194
Merge branch 'branch-24.10' into libcudf-wheel
jameslamb 020ea50
fix update-version.sh, some 24.8 references
jameslamb 46c23b3
Merge branch 'libcudf-wheel' of github.com:msarahan/cudf into libcudf…
jameslamb 1cb8dcc
need cuda_suffixed=true
jameslamb 6587292
Merge branch 'branch-24.10' into libcudf-wheel
jameslamb 6dedc2b
Merge branch 'branch-24.10' into libcudf-wheel
jameslamb 81d6d03
Merge branch 'branch-24.10' into libcudf-wheel
jameslamb 2acdf7c
Merge branch 'branch-24.10' into libcudf-wheel
jameslamb b2dd577
Merge branch 'branch-24.10' of github.com:rapidsai/cudf into libcudf-…
jameslamb b5223b1
update scikit-build-core
jameslamb 718a14d
Merge branch 'branch-24.10' of github.com:rapidsai/cudf into libcudf-…
jameslamb ec3fff6
Merge branch 'branch-24.10' of github.com:rapidsai/cudf into libcudf-…
jameslamb 4052116
Merge branch 'libcudf-wheel' of github.com:msarahan/cudf into libcudf…
jameslamb 0ccfd06
use rmm/librmm wheels from https://github.com/rapidsai/rmm/pull/1644,…
jameslamb 4bbf1b5
Merge branch 'branch-24.10' of github.com:rapidsai/cudf into libcudf-…
jameslamb 0d0e291
fix typos
jameslamb 8285d1d
set RAPIDS_PY_CUDA_SUFFIX
jameslamb 212388a
artifact name is rmm_ for both cpp and python wheels
jameslamb 06474bd
missed a spot where rmm and librmm are installed
jameslamb 16bfed1
Merge branch 'branch-24.10' of github.com:rapidsai/cudf into libcudf-…
jameslamb 87178be
Merge branch 'branch-24.10' of github.com:rapidsai/cudf into libcudf-…
jameslamb c24210a
update to latest rmm
jameslamb 2377809
Merge branch 'branch-24.10' of github.com:rapidsai/cudf into libcudf-…
jameslamb 9c9536b
uncomment all CI, logger-specific visibility control should no longer…
jameslamb 8708892
Merge branch 'branch-24.10' of github.com:rapidsai/cudf into libcudf-…
jameslamb d97e19f
new pattern for scikit-build-core config, remove some debugging-only …
jameslamb ad362fc
Merge branch 'branch-24.10' of github.com:rapidsai/cudf into libcudf-…
jameslamb a4ffdc8
try to use regular rmm nightlies, remove other debugging stuff, combi…
jameslamb 226fdf0
fix paths
jameslamb 0577f09
Merge branch 'branch-24.10' of github.com:rapidsai/cudf into libcudf-…
jameslamb 1117a73
remove unrelated changes (I think left over from a merge conflict res…
jameslamb aa43832
fix conflicts
jameslamb 60811a0
Merge branch 'branch-24.10' of github.com:rapidsai/cudf into libcudf-…
jameslamb f7b310e
style
jameslamb 7b663f2
merge in pylibcudf changes
jameslamb 5e2a065
dependencies.yaml
jameslamb 78af8e9
add build job, clean up formatting
jameslamb b33f421
make pylibcudf depend on libcudf, use '_libcudf' instead of '_cpp'
jameslamb 32a39bf
clean up build scripts
jameslamb 74126f8
more build script fixes
jameslamb d64f493
make build script executable
jameslamb af82d27
remove ncomp and arrow vendoring
jameslamb f776095
more auditwheel
jameslamb 796fc1d
add Arrow linking
jameslamb d6eba06
revert logger visibility fix (should no longer be necessary as of htt…
jameslamb b3da651
merge branch-24.10
jameslamb cb2bf5a
add 'cpp' identifier for rapids-download-wheels-from-s3 calls
jameslamb 783bfc0
merge branch-24.10
jameslamb 26dde42
more dependencies.yaml changes
jameslamb 2fa4935
add libcudf build dependency to cudf
jameslamb 0661e63
Apply suggestions from code review
jameslamb 57bd7e8
Merge branch 'branch-24.10' into libcudf-wheel
jameslamb 0ba7a46
no Cython or Numpy deps
jameslamb fbd1b56
simplify dependencies.yaml
jameslamb 707a8bd
more fiddling with dependencies.yaml
jameslamb 3a939f4
standardize comments
jameslamb 68e6977
merge branch-24.10
jameslamb 3cbbc5b
test older rapids-cmake
jameslamb 97a908b
grrrrrr cmakelint
jameslamb eb4391b
non-raw URL
jameslamb cf72208
Merge branch 'branch-24.10' of github.com:rapidsai/cudf into libcudf-…
jameslamb bc701f3
revert rapids-cmake pin
jameslamb bf59d2d
cudf and pylibcudf need librmm build dependencies for nvtx3-config.cmake
jameslamb b8c6a3e
Merge branch 'branch-24.10' of github.com:rapidsai/cudf into libcudf-…
jameslamb bbbe243
fix script name
jameslamb 3cf9803
Merge branch 'branch-24.10' of github.com:rapidsai/cudf into libcudf-…
jameslamb 53ea69b
Apply suggestions from code review
jameslamb a4c6360
Merge branch 'branch-24.10' of github.com:rapidsai/cudf into libcudf-…
jameslamb 5916b94
make wheel type explicit in all rapids-download-wheels-from-s3 calls
jameslamb 0ebb167
Apply suggestions from code review
jameslamb b6102f8
Merge branch 'branch-24.10' into libcudf-wheel
jameslamb 4ba53d8
remove TODO comment about what happens if a system installation of nv…
jameslamb fad9b46
Merge branch 'branch-24.10' of github.com:rapidsai/cudf into libcudf-…
jameslamb 5a39dfa
revert build.sh changes
jameslamb File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -67,7 +67,27 @@ jobs: | |
| node_type: "gpu-v100-latest-1" | ||
| run_script: "ci/build_docs.sh" | ||
| sha: ${{ inputs.sha }} | ||
| wheel-build-libcudf: | ||
| secrets: inherit | ||
| uses: rapidsai/shared-workflows/.github/workflows/[email protected] | ||
| with: | ||
| build_type: ${{ inputs.build_type || 'branch' }} | ||
| branch: ${{ inputs.branch }} | ||
| sha: ${{ inputs.sha }} | ||
| date: ${{ inputs.date }} | ||
| script: ci/build_wheel_libcudf.sh | ||
| wheel-publish-libcudf: | ||
| needs: wheel-build-libcudf | ||
| secrets: inherit | ||
| uses: rapidsai/shared-workflows/.github/workflows/[email protected] | ||
| with: | ||
| build_type: ${{ inputs.build_type || 'branch' }} | ||
| branch: ${{ inputs.branch }} | ||
| sha: ${{ inputs.sha }} | ||
| date: ${{ inputs.date }} | ||
| package-name: libcudf | ||
| wheel-build-pylibcudf: | ||
| needs: [wheel-publish-libcudf] | ||
| secrets: inherit | ||
| uses: rapidsai/shared-workflows/.github/workflows/[email protected] | ||
| with: | ||
|
|
||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -23,6 +23,7 @@ jobs: | |
| - static-configure | ||
| - conda-notebook-tests | ||
| - docs-build | ||
| - wheel-build-libcudf | ||
| - wheel-build-pylibcudf | ||
| - wheel-build-cudf | ||
| - wheel-tests-cudf | ||
|
|
@@ -121,10 +122,18 @@ jobs: | |
| arch: "amd64" | ||
| container_image: "rapidsai/ci-conda:latest" | ||
| run_script: "ci/build_docs.sh" | ||
| wheel-build-pylibcudf: | ||
| wheel-build-libcudf: | ||
jameslamb marked this conversation as resolved.
Show resolved
Hide resolved
|
||
| needs: checks | ||
| secrets: inherit | ||
| uses: rapidsai/shared-workflows/.github/workflows/[email protected] | ||
| with: | ||
| matrix_filter: group_by([.ARCH, (.CUDA_VER|split(".")|map(tonumber)|.[0])]) | map(max_by(.PY_VER|split(".")|map(tonumber))) | ||
| build_type: pull-request | ||
| script: "ci/build_wheel_libcudf.sh" | ||
| wheel-build-pylibcudf: | ||
| needs: [checks, wheel-build-libcudf] | ||
| secrets: inherit | ||
| uses: rapidsai/shared-workflows/.github/workflows/[email protected] | ||
| with: | ||
| build_type: pull-request | ||
| script: "ci/build_wheel_pylibcudf.sh" | ||
|
|
||
vyasr marked this conversation as resolved.
Show resolved
Hide resolved
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -5,16 +5,28 @@ set -euo pipefail | |
|
|
||
| package_dir="python/cudf" | ||
|
|
||
| export SKBUILD_CMAKE_ARGS="-DUSE_LIBARROW_FROM_PYARROW=ON" | ||
|
|
||
| # Download the pylibcudf built in the previous step | ||
| RAPIDS_PY_CUDA_SUFFIX="$(rapids-wheel-ctk-name-gen ${RAPIDS_CUDA_VERSION})" | ||
| RAPIDS_PY_WHEEL_NAME="pylibcudf_${RAPIDS_PY_CUDA_SUFFIX}" rapids-download-wheels-from-s3 /tmp/pylibcudf_dist | ||
|
|
||
| echo "pylibcudf-${RAPIDS_PY_CUDA_SUFFIX} @ file://$(echo /tmp/pylibcudf_dist/pylibcudf_*.whl)" > /tmp/constraints.txt | ||
| # Downloads libcudf and pylibcudf wheels from this current build, | ||
| # then ensures 'cudf' wheel builds always use the 'libcudf' and 'pylibcudf' just built in the same CI run. | ||
| # | ||
| # Using env variable PIP_CONSTRAINT is necessary to ensure the constraints | ||
| # are used when creating the isolated build environment. | ||
| RAPIDS_PY_WHEEL_NAME="libcudf_${RAPIDS_PY_CUDA_SUFFIX}" rapids-download-wheels-from-s3 cpp /tmp/libcudf_dist | ||
| RAPIDS_PY_WHEEL_NAME="pylibcudf_${RAPIDS_PY_CUDA_SUFFIX}" rapids-download-wheels-from-s3 python /tmp/pylibcudf_dist | ||
| echo "libcudf-${RAPIDS_PY_CUDA_SUFFIX} @ file://$(echo /tmp/libcudf_dist/libcudf_*.whl)" > /tmp/constraints.txt | ||
| echo "pylibcudf-${RAPIDS_PY_CUDA_SUFFIX} @ file://$(echo /tmp/pylibcudf_dist/pylibcudf_*.whl)" >> /tmp/constraints.txt | ||
| export PIP_CONSTRAINT="/tmp/constraints.txt" | ||
|
|
||
| ./ci/build_wheel.sh ${package_dir} | ||
|
|
||
| python -m auditwheel repair -w ${package_dir}/final_dist ${package_dir}/dist/* | ||
| python -m auditwheel repair \ | ||
| --exclude libcudf.so \ | ||
| --exclude libarrow.so.1601 \ | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Depending on merge order this can be removed. |
||
| --exclude libnvcomp.so \ | ||
| --exclude libnvcomp_bitcomp.so \ | ||
| --exclude libnvcomp_gdeflate.so \ | ||
| -w ${package_dir}/final_dist \ | ||
| ${package_dir}/dist/* | ||
|
|
||
| RAPIDS_PY_WHEEL_NAME="cudf_${RAPIDS_PY_CUDA_SUFFIX}" rapids-upload-wheels-to-s3 ${package_dir}/final_dist | ||
| RAPIDS_PY_WHEEL_NAME="cudf_${RAPIDS_PY_CUDA_SUFFIX}" rapids-upload-wheels-to-s3 python ${package_dir}/final_dist | ||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,15 @@ | ||
| #!/bin/bash | ||
| # Copyright (c) 2023-2024, NVIDIA CORPORATION. | ||
|
|
||
| set -euo pipefail | ||
|
|
||
| package_dir="python/libcudf" | ||
|
|
||
| ./ci/build_wheel.sh ${package_dir} | ||
|
|
||
| RAPIDS_PY_CUDA_SUFFIX="$(rapids-wheel-ctk-name-gen ${RAPIDS_CUDA_VERSION})" | ||
|
|
||
| mkdir -p ${package_dir}/final_dist | ||
| python -m auditwheel repair --exclude libarrow.so.1601 -w ${package_dir}/final_dist ${package_dir}/dist/* | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. As above, this will be removable soon. |
||
|
|
||
| RAPIDS_PY_WHEEL_NAME="libcudf_${RAPIDS_PY_CUDA_SUFFIX}" rapids-upload-wheels-to-s3 cpp ${package_dir}/final_dist | ||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -49,6 +49,7 @@ DEPENDENCIES=( | |
| dask-cuda | ||
| dask-cudf | ||
| kvikio | ||
| libcudf | ||
| libkvikio | ||
| librmm | ||
| pylibcudf | ||
|
|
||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.