Cabana icon indicating copy to clipboard operation
Cabana copied to clipboard

Support MPI for CUDA and HIP when not GPU-aware

Open sslattery opened this issue 4 years ago • 1 comments

We should allow for versions of MPI to be used that aren't GPU-aware. My proposal to do this is to add an extra optional template parameter to the communication classes which describes the communication memory space. We then simply mirror the user data into the communication memory space prior to calling MPI.

Some sensible defaults will be assuming CUDA-aware MPI and using the host space for HIP. A user can always change this in their implementation depending on their dependencies. We could then add a CMake option which would change these defaults for the user so they could easily configure for the given system they are using.

Once a HIP-aware MPI becomes available we can use this as the HIP default.

sslattery avatar May 06 '20 14:05 sslattery

bump on this, I just ran into it when making sure everything passed but I wasn't using an GPU aware MPI

rfbird avatar Sep 09 '20 18:09 rfbird

Very stale and I don't think necessary - a manual copy to the host will work if really necessary (as in the comm benchmarks)

streeve avatar Dec 01 '22 16:12 streeve