Conversation
Carry HIP include flags, library paths, and the detected runtime library into the temporary hipFile probe environment. This resolves transitive dependencies for separate installation prefixes while preserving library order and restoring caller flags. Signed-off-by: Jihyeon Gim <potatogim@potatogim.net>
Distinguish filesystem failures from negative cuFile operation errors in the shared transfer decoder. Capture errno immediately so callers retain the original cause, while successful and short transfers keep their byte counts. Signed-off-by: Jihyeon Gim <potatogim@potatogim.net>
Own lazy driver sessions in both storage backends and release them after the last POSIX instance finalizes. Reset ownership only after a successful close and report shutdown failures as fatal errors. Guard lifecycle calls with storage support so CPU and runtime-only builds remain independent. Signed-off-by: Jihyeon Gim <potatogim@potatogim.net>
Check allocation, copies, kernel launch, execution, and cleanup in both GPU verifiers, and reject unsupported formats and partial words. Use atomic mismatch reporting and skip work for empty timestamp buffers. Abort at common dispatch on verification failure so negative results cannot reach error counters. Signed-off-by: Jihyeon Gim <potatogim@potatogim.net>
Pass the original buffer base to GPU reads and writes while advancing the buffer offset after short transfers. This prevents completed bytes from displacing the next transfer twice and leaves syscall pointer handling unchanged. Signed-off-by: Jihyeon Gim <potatogim@potatogim.net>
cufile.h uses loff_t, which glibc exposes with _GNU_SOURCE. Enable system extensions project-wide through the generated config.h, and require them in MPI probes after selecting the MPI compiler. Remove redundant local GNU feature definitions and use the guarded system-extension template for _XOPEN_SOURCE while retaining its value of 700. Signed-off-by: Jihyeon Gim <potatogim@potatogim.net>
Remove the unused block and thread counts from the empty CUDA and HIP pattern update functions. Keep both implementations symmetric. Signed-off-by: Jihyeon Gim <potatogim@potatogim.net>
potatogim
force-pushed
the
fix/gpu-io-followups
branch
from
September 10, 2026 00:31
afa37f5 to
f53be03
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Follow-up fixes for the GPU Direct Storage code merged in #539 and #540. A post-merge review found a configure-time defect, a few smaller correctness issues, and one build failure that shows up with recent CUDA headers.
Problem
Change
Seven commits, one per fix:
Testing
Built on Rocky Linux 10 with ROCm 7.14 and CUDA 13.3: