-
Notifications
You must be signed in to change notification settings - Fork 58
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
Build KvikIO as a shared library #527
Conversation
31bdb15
to
891099d
Compare
df465f1
to
788c9b4
Compare
6d38bec
to
f1a0f21
Compare
Revert before PR merge
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This seems mostly right to me. I have a couple pieces of feedback and I noticed CI is not running. It gave an error on the last commit.
Invalid workflow file: .github/workflows/pr.yaml#L78
The workflow is not valid. .github/workflows/pr.yaml (Line: 78, Col: 11): Input shared_actions_repo is required, but not provided while calling. .github/workflows/pr.yaml (Line: 78, Col: 11): Input shared_actions_ref is required, but not provided while calling.
@@ -35,14 +35,23 @@ rapids_cmake_write_version_file(include/kvikio/version_config.hpp) | |||
# Set a default build type if none was specified | |||
rapids_cmake_build_type(Release) | |||
|
|||
# build options | |||
option(KvikIO_REMOTE_SUPPORT "Configure CMake to build with remote IO support" ON) | |||
# ################################################################################################## |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
These comment blocks are super long and the lengths of the ---
aren't the same length as the ###
. Can we keep this to ~72 chars instead of ~100?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The 100 width of the comment blocks are forced by the cmake style, which adds =
until the width is 100. I have fixed the ----
length to match.
I think we need a style update in a separate PR.
This was due to an unexpected merge of rapidsai/shared-workflows#257, which should be corrected by rapidsai/shared-workflows#258. cc: @msarahan |
@bdice perhaps a typo but rapidsai/shared-workflows#257 at this time hasn't been merged. |
Sorry, I meant rapidsai/shared-workflows#247. The issue should be resolved now but may require pushing a new commit. |
Co-authored-by: Robert Maynard <[email protected]>
@robertmaynard, do you have anything else? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good. I checked everything, but not exactly with a fine-toothed comb since we'll be testing this very quickly in the downstream PRs anyway.
@bdice do you have anything? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Approving. I previously looked at everything, and now approve based on the diff since my last look.
/merge |
Thanks all. With this merged, we need to update cudf asap: rapidsai/cudf#17239 |
This reverts commit 2d8eeaf.
Update cudf to use the new KvikIO shared library: rapidsai/kvikio#527 #### Tasks - [x] Wait for the [KvikIO shared library PR](rapidsai/kvikio#527) to be merged. - [x] Revert the use of the [KvikIO shared library](rapidsai/kvikio#527) in CI: 2d8eeaf. Authors: - Mads R. B. Kristensen (https://github.com/madsbk) - Vyas Ramasubramani (https://github.com/vyasr) Approvers: - Vyas Ramasubramani (https://github.com/vyasr) - James Lamb (https://github.com/jameslamb) URL: #17239
Moving libcurl dependent functions to
remote_handle.cpp
(let's move the rest in a follow up PR) and setup buildinglibkvikio.so
.Background
Now that KvikIO has evolved into a standalone IO library that works without cuFile and CUDA, I think it makes sense to move to a shared library. Originally, KvikIO was a very thin wrapper around cuFile, which is why we decided to keep it header-only (not because of templates).
Pros:
libkvikio.so
.Cons: