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
Support for GPUDirectStorage #1630
Comments
I don't know, it was never clear to me what exactly consists the GPUDirectStorage APIs or libraries. I did have a look at cuFile, #1235, but it was completely unusable (requiring an extremely peculiar software setup down to specific OS versions and filesystem mount options) so I didn't continue that effort. |
Microsoft included this into DIrectX recently, so I thought this would be easier. Thanks for the info! |
you can do integration and testing without requiring MOFED. |
FWIW KvikIO also has a C++ layer. It also has fallbacks if run on a system that doesn't support GDS. So maybe that would be an easier entry point. cc @madsbk |
Yes, please let's know if you need any help with KvikIO. |
@madsbk Do you have a pointer to the API docs? |
The API docs and a C++ example. |
Yes, KvikIO is built on top of cuFile and will work even on systems that doesn't support or have cuFile installed. cuFile doc: https://docs.nvidia.com/gpudirect-storage/api-reference-guide/index.html |
cuFile supposedly also doesn't need a compatible set-up and should just work. In any case, there's already a proof-of-concept in #1235, so that should be easy for anybody to pick up. I probably won't; this is very low on my TODO list, in part because I never managed to set-up GDS on my workstation (Arch Linux). Support for KvikIO is much harder (since it requires C++), and doesn't need to happen in CUDA.jl, but can just live in an external package instead. |
this could be very useful, for our use case, we need something that can load bytes onto GPU directly given |
We are using compressed disk array storage (Zarr.jl [1]). In Python there is kvikIO [2], which allows loading Zarr arrays directly into GPU memory. There are two steps, one is loading a chunk of the Zarr array into memory and the second one is to decompress it.
What would it take to implement this in Julia?
@Sonicious @meggart @felixcremer
[1] https://github.com/JuliaIO/Zarr.jl
[2] https://docs.rapids.ai/api/kvikio/stable/
The text was updated successfully, but these errors were encountered: