feat(libcuvs): port libcuvs to rattler-build#751
feat(libcuvs): port libcuvs to rattler-build#751rapids-bot[bot] merged 45 commits intorapidsai:branch-25.04from
Conversation
Add source and fix nccl spec Add pre-build stage, remove static output, add tests and examples fix(libcuvs): handle most overlinking errors fix(libcuvs): install cuvs, c_api, and hnswlib components feat(libcuvs): remove defunct build scripts
|
Auto-sync is disabled for draft pull requests in this repository. Workflows must be run manually. Contributors can view more details about this message here. |
|
/ok to test |
|
/ok to test |
This reverts commit b597650.
|
/ok to test |
|
/ok to test |
This reverts commit 2eb7ddd.
bdice
left a comment
There was a problem hiding this comment.
A few comments but overall this is great. I'm really glad this rattler conversion is getting easier as we progress through more RAPIDS libraries.
|
This is ready for another look @bdice |
| then: | ||
| - libaio | ||
| - libboost-devel=1.87 | ||
| - mkl-devel=2023 |
There was a problem hiding this comment.
For follow-up: Why is this pinned to mkl 2023? The latest is 2025.0.1. https://anaconda.org/conda-forge/mkl/files
vyasr
left a comment
There was a problem hiding this comment.
Couple notes for future work, but LGTM.
| # Remove `-fdebug-prefix-map` line from CFLAGS and CXXFLAGS so the | ||
| # incrementing version number in the compile line doesn't break the | ||
| # cache | ||
| set -x | ||
| export CFLAGS=$(echo $CFLAGS | sed -E 's@\-fdebug\-prefix\-map[^ ]*@@g') | ||
| export CXXFLAGS=$(echo $CXXFLAGS | sed -E 's@\-fdebug\-prefix\-map[^ ]*@@g') | ||
| set +x |
There was a problem hiding this comment.
Suggestion: rapidsai/rapids-cmake#798 (comment)
There was a problem hiding this comment.
Future suggestion: rather than maintaining separate cuvs-bench and cuvs-bench-cpu recipes, we should parametrize the recipe. The two should be almost identical.
|
/merge |
|
Followups recorded in rapidsai/build-planning#47 (comment) |
This PR ports cuVS over to `rattler-build` for building conda packages. Some changes to the build process: * `cuvs-bench` was recompiling the entire library separately -- caching was hopefully helping with this but it was an unnecessary double-compile. Instead, I've added the `bench-ann` to the pre-build stage in `libcuvs` and create a `libcuvs-bench` output there, that `cuvs-bench` then depends on to provide the necessary shared objects. * Edited `build.sh` so that if `-n` is passed, the `cuvs-bench` Python package is not installed. * `libcuvs-static` seems to be a leftover from a previous incarnation -- the existing `libcuvs-static` packages on `rapidsai-nightly` consist only of build metadata files and are otherwise empty. I've removed the unused `--compile-static-lib` option from `build.sh` Authors: - Gil Forsyth (https://github.com/gforsyth) Approvers: - Bradley Dice (https://github.com/bdice) - Vyas Ramasubramani (https://github.com/vyasr) URL: rapidsai#751
This PR ports cuVS over to `rattler-build` for building conda packages. Some changes to the build process: * `cuvs-bench` was recompiling the entire library separately -- caching was hopefully helping with this but it was an unnecessary double-compile. Instead, I've added the `bench-ann` to the pre-build stage in `libcuvs` and create a `libcuvs-bench` output there, that `cuvs-bench` then depends on to provide the necessary shared objects. * Edited `build.sh` so that if `-n` is passed, the `cuvs-bench` Python package is not installed. * `libcuvs-static` seems to be a leftover from a previous incarnation -- the existing `libcuvs-static` packages on `rapidsai-nightly` consist only of build metadata files and are otherwise empty. I've removed the unused `--compile-static-lib` option from `build.sh` Authors: - Gil Forsyth (https://github.com/gforsyth) Approvers: - Bradley Dice (https://github.com/bdice) - Vyas Ramasubramani (https://github.com/vyasr) URL: rapidsai#751
This PR ports cuVS over to
rattler-buildfor building conda packages.Some changes to the build process:
cuvs-benchwas recompiling the entire library separately -- caching was hopefully helping with this but it was an unnecessary double-compile. Instead, I've added thebench-annto the pre-build stage inlibcuvsand create alibcuvs-benchoutput there, thatcuvs-benchthen depends on to provide the necessary shared objects.Edited
build.shso that if-nis passed, thecuvs-benchPython package is not installed.libcuvs-staticseems to be a leftover from a previous incarnation -- the existinglibcuvs-staticpackages onrapidsai-nightlyconsist only of build metadata files and are otherwise empty. I've removed the unused--compile-static-liboption frombuild.sh