Open AtlantaPepsi opened 3 years ago
@AtlantaPepsi I plan to make a production release for Casper. It will be great if this PR can be included. Can you please update if the code is ready to review?
Hi @minsii , to be honest I haven't gotten time to work on Casper code for a while. I have more time recently, but there's quite a few things I haven't fixed/figured out yet AFAIK... When do you plan to make the release?
I am targeting by end of May. But it is flexible.
This is a draft PR, work in progress to address known Issues #2 in README:
alloc_shared_noncontig option is forced to be true for shared window at the moment, to enable non-contiguous memory some additional operations/functionalities would be necessary.
Most obviously, the offset from target user to ghost base needs to be recalculated. Aside from the existing approach (of accumulating window sizes of all ghosts+users in front of calling process), I'm adding a new calculation, using MPI_shared_query from ghost processes to query users' base address (local to ghost) in shared window, then send
offset = usr_addr-ghost_base
back to users in middle ofalloc_shared_window
function.But the subsequent window creation and RMA wrapper will be further complicated, too. Few months ago when I was first looking at this issue, I recall there were some difficulties when I was looking at
CSPU_target_get_ghost
protocols, as well as some critical conflicts with Window flavor requirement. I can't remember the specific details (which is problematic) and have to start over to review the code.For this reason this draft PR will also serve as a personal log, lest I forget my previous efforts wherever I left them due to my unpredictable schedule :S