int mca_spml_ucx_put_nb(void* dst_addr, size_t size, void* src_addr, int dst, void **handle) { void *rva; ucs_status_t status; spml_ucx_mkey_t *ucx_mkey; ucx_mkey = mca_spml_ucx_get_mkey(dst, dst_addr, &rva); status = ucp_put_nbi(mca_spml_ucx.ucp_peers[dst].ucp_conn, src_addr, size, (uint64_t)rva, ucx_mkey->rkey); return ucx_status_to_oshmem_nb(status); }
int mca_spml_ucx_get_nb(shmem_ctx_t ctx, void *src_addr, size_t size, void *dst_addr, int src, void **handle) { void *rva; ucs_status_t status; spml_ucx_mkey_t *ucx_mkey; mca_spml_ucx_ctx_t *ucx_ctx = (mca_spml_ucx_ctx_t *)ctx; ucx_mkey = mca_spml_ucx_get_mkey(ctx, src, src_addr, &rva, &mca_spml_ucx); status = ucp_get_nbi(ucx_ctx->ucp_peers[src].ucp_conn, dst_addr, size, (uint64_t)rva, ucx_mkey->rkey); return ucx_status_to_oshmem_nb(status); }