upcxx::copy source/operation completions should activate on initiating persona

Issue #143 resolved
Dan Bonachea created an issue

The current spec for upcxx::copy() says:

Source- and operation-completion operations execute on the master persona of the calling process.

This is contrary to how all other source/operation completions work and seems like a fundamental flaw, because it means futures and promises are not usable by a non-master initiating thread. I believe this should be reverted to the usual semantic that source/operation completion actions are activated by the initiating persona, and John confirms this is what the implementation does.

We need to keep the "master persona does it" semantic for remote completion actions, but it appears that semantic might have been accidentally copied to source/operation completion.

Comments (1)

  1. Log in to comment