Skip to content
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

Speed-up rust build #138

Merged
merged 2 commits into from
May 17, 2024
Merged

Conversation

benfred
Copy link
Member

@benfred benfred commented May 17, 2024

We are using cmake-rs to link the c++ cmake build and the rust build. This had the side effect of causing us to always recompile all of libcuvs with the rust bindings. With the migration of the libraft ann code to cuvs, this has led to the rust bindings being the bottleneck in building.

Get around this by creating a new dummy cmake target that depends on cuvs, and having this target only build libcuvs if needed.

@benfred benfred added improvement Improves an existing functionality non-breaking Introduces a non-breaking change labels May 17, 2024
@benfred benfred requested review from a team as code owners May 17, 2024 20:35
@github-actions github-actions bot added the CMake label May 17, 2024
@benfred benfred marked this pull request as draft May 17, 2024 20:35
We are using cmake-rs to link the c++ cmake build and the rust build.
This had the side effect of causing us to always recompile all of libcuvs
with the rust bindings. With the migration of the libraft ann code to cuvs,
this has led to the rust bindings being the bottleneck in building.

Get around this by creating a new dummy cmake target that depends on cuvs,
and having this target only build libcuvs if needed.
@cjnolet
Copy link
Member

cjnolet commented May 17, 2024

/merge

@benfred benfred marked this pull request as ready for review May 17, 2024 22:28
@benfred
Copy link
Member Author

benfred commented May 17, 2024

/merge

@rapids-bot rapids-bot bot merged commit 85aa026 into rapidsai:branch-24.06 May 17, 2024
54 checks passed
@benfred benfred deleted the speedup_rust_build branch May 17, 2024 22:28
difyrrwrzd added a commit to difyrrwrzd/cuvs that referenced this pull request Aug 10, 2024
We are using cmake-rs to link the c++ cmake build and the rust build. This had the side effect of causing us to always recompile all of libcuvs with the rust bindings. With the migration of the libraft ann code to cuvs, this has led to the rust bindings being the bottleneck in building.

Get around this by creating a new dummy cmake target that depends on cuvs, and having this target only build libcuvs if needed.

Authors:
  - Ben Frederickson (https://github.com/benfred)

Approvers:
  - Corey J. Nolet (https://github.com/cjnolet)

URL: rapidsai/cuvs#138
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
CMake improvement Improves an existing functionality non-breaking Introduces a non-breaking change
Projects
Development

Successfully merging this pull request may close these issues.

2 participants