-
Notifications
You must be signed in to change notification settings - Fork 891
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
Throw an error when libcudf is built without cuFile and LIBCUDF_CUFILE_POLICY
is set to "ALWAYS"
#12080
Throw an error when libcudf is built without cuFile and LIBCUDF_CUFILE_POLICY
is set to "ALWAYS"
#12080
Conversation
Codecov ReportBase: 87.47% // Head: 88.04% // Increases project coverage by
Additional details and impacted files@@ Coverage Diff @@
## branch-22.12 #12080 +/- ##
================================================
+ Coverage 87.47% 88.04% +0.56%
================================================
Files 133 135 +2
Lines 21826 22025 +199
================================================
+ Hits 19093 19392 +299
+ Misses 2733 2633 -100
Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here. ☔ View full report at Codecov. |
@@ -269,6 +269,10 @@ std::unique_ptr<cufile_input_impl> make_cufile_input(std::string const& filepath | |||
if (cufile_integration::is_always_enabled()) throw; | |||
} | |||
} | |||
#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.
Is the try-catch still required?
Perhaps whatever is thrown in std::make_unique<cufile_input_impl>(filepath)
should just pass through to the caller.
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.
try-catch is still required because we want to silently fall back to host path if GDS fails and LIBCUDF_CUFILE_POLICY!="ALWAYS"
Returning a null is not an error here. We fall back to a different source/sink type.
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.
Refactored the PR inspired by your question, less branching now :)
build |
@gpucibot merge |
Description
Currently, creating a cufile
datasource
ordata_sink
silently fails if libcudf was built without the cuFile headers. This is expected behavior when theLIBCUDF_CUFILE_POLICY
is not set, or is set to and value other than "ALWAYS". However, with "ALWAYS", there should be no fallback from GDS.This PR adds a check to fail loudly when
LIBCUDF_CUFILE_POLICY=="ALWAYS"
cannot be enforced because of missing dependency (cuFile).Checklist