-
Notifications
You must be signed in to change notification settings - Fork 915
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
Fix lifespan of the temporary directory that holds cuFile configuration file #10403
Fix lifespan of the temporary directory that holds cuFile configuration file #10403
Conversation
…bug-cufile-json-tmp-dir-lifespan
Codecov Report
@@ Coverage Diff @@
## branch-22.04 #10403 +/- ##
================================================
+ Coverage 86.12% 86.16% +0.03%
================================================
Files 139 139
Lines 22450 22462 +12
================================================
+ Hits 19336 19354 +18
+ Misses 3114 3108 -6
Continue to review full report at Codecov.
|
@gpucibot merge |
@vuule This PR is increasing cuIO benchmark runtimes.
vs
|
The effect of this PR should be the same as changing the default One way to check would be to change the line https://github.com/rapidsai/cudf/blob/branch-22.04/cpp/src/io/utilities/config_utils.cpp#L45 |
Yes. That solves the issue. You can make the change if required. |
With the suggested change, on bare metal, it ran fine. On rapids-compose environment, cuIO benchmarks crashed
|
To clarify, the current behavior is correct, we chose to disable compatibility mode by default. I don't think we should treat this as a perf regression. However, the regression does indicate that the GDS default and the fall back logic could be improved. |
The temporary directory is created when we modify the cuFile JSON file to control the compat mode. This directory is a local variable in the
modify_cufile_json
function, so the modified JSON file is deleted as soon as the function returns.Because of this, cuFile is not able to read the modified JSON config and falls back to the default config file.
This PR makes the temporary directory a static variable so that the cuFile config file is avaliable until the end of program.
This fixes the compat mode override that we do via
LIBCUDF_CUFILE_POLICY
environment variable.