Skip to content

Conversation

@xinzhao3
Copy link
Owner

@xinzhao3 xinzhao3 commented Nov 8, 2018

No description provided.

return ret;
}

if (pthread_equal(tid, mca_osc_ucx_component.main_tid)) {
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Does this mean that main_tid works with "receve" worker?

return ret;
}

if (pthread_equal(tid, mca_osc_ucx_component.main_tid)) {
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe worth making this piece an inline function so it doesn't duplicate in put & get

}
}

curr_thread_info = pthread_getspecific(my_thread_key);
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I would shift it in the "if" statement.
Otherwise you are always calling pthread_getspecific twice which we don't want

UCP_PARAM_FIELD_REQUEST_SIZE;
context_params.features = UCP_FEATURE_RMA | UCP_FEATURE_AMO32 | UCP_FEATURE_AMO64;
context_params.mt_workers_shared = 0;
context_params.mt_workers_shared = 1;
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I thought in our implementations workers are not shared, only context.

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I guess this is related to the context. But I wanted to double check.

if (mca_osc_ucx_component.mem_addr_disps == NULL)
mca_osc_ucx_component.mem_addr_disps = malloc(comm_size * sizeof(int));

if (!is_eps_ready) {
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In which case is_ep_ready can be "true"?

}
pthread_mutex_unlock(&curr_worker->lock);
}
}
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Don't we need to also update ompi_osc_ucx_flush_all?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants