* Don't send acks for expected triggered messages; still need to get the rest of the data
* Don't ask for UNLINK events for persistent long unexpected ME or the get MEs. This commit was SVN r24814.
Этот коммит содержится в:
родитель
391074cde6
Коммит
e8817f3f63
@ -264,7 +264,7 @@ ompi_mtl_portals4_component_init(bool enable_progress_threads,
|
||||
me.ct_handle = PTL_CT_NONE;
|
||||
me.min_free = 0;
|
||||
me.ac_id.uid = PTL_UID_ANY;
|
||||
me.options = PTL_ME_OP_PUT | PTL_ME_ACK_DISABLE | PTL_ME_EVENT_COMM_DISABLE;
|
||||
me.options = PTL_ME_OP_PUT | PTL_ME_ACK_DISABLE | PTL_ME_EVENT_COMM_DISABLE | PTL_ME_EVENT_UNLINK_DISABLE;
|
||||
me.match_id.phys.nid = PTL_NID_ANY;
|
||||
me.match_id.phys.pid = PTL_PID_ANY;
|
||||
me.match_bits = PTL_LONG_MSG;
|
||||
|
@ -457,7 +457,7 @@ ompi_mtl_portals4_irecv(struct mca_mtl_base_module_t* mtl,
|
||||
me.ac_id.uid = PTL_UID_ANY;
|
||||
me.options = PTL_ME_OP_PUT | PTL_ME_USE_ONCE | PTL_ME_EVENT_UNLINK_DISABLE;
|
||||
if (ompi_mtl_portals4.protocol == triggered && length > ompi_mtl_portals4.eager_limit) {
|
||||
me.options |= PTL_ME_EVENT_CT_COMM | PTL_ME_EVENT_CT_OVERFLOW | PTL_ME_EVENT_CT_BYTES;
|
||||
me.options |= PTL_ME_EVENT_CT_COMM | PTL_ME_EVENT_CT_OVERFLOW | PTL_ME_EVENT_CT_BYTES | PTL_ME_ACK_DISABLE;
|
||||
}
|
||||
me.match_id = remote_proc;
|
||||
me.match_bits = match_bits;
|
||||
|
@ -97,7 +97,12 @@ ompi_mtl_portals4_long_callback(ptl_event_t *ev, struct ompi_mtl_portals4_reques
|
||||
|
||||
/* received an ack - unlink the me */
|
||||
if (ev->type == PTL_EVENT_ACK) {
|
||||
PtlMEUnlink(ptl_request->me_h);
|
||||
ret = PtlMEUnlink(ptl_request->me_h);
|
||||
if (PTL_OK != ret) {
|
||||
opal_output_verbose(1, ompi_mtl_base_output,
|
||||
"%s:%d: long send callback PtlMDUnlink returned %d",
|
||||
__FILE__, __LINE__, ret);
|
||||
}
|
||||
}
|
||||
|
||||
return OMPI_SUCCESS;
|
||||
@ -245,7 +250,7 @@ ompi_mtl_portals4_long_isend(void *start, int length, int contextid, int localra
|
||||
me.ct_handle = PTL_CT_NONE;
|
||||
me.min_free = 0;
|
||||
me.ac_id.uid = PTL_UID_ANY;
|
||||
me.options = PTL_ME_OP_GET | PTL_ME_USE_ONCE;
|
||||
me.options = PTL_ME_OP_GET | PTL_ME_USE_ONCE | PTL_ME_EVENT_UNLINK_DISABLE;
|
||||
me.match_id = endpoint->ptl_proc;
|
||||
if (ompi_mtl_portals4.protocol == rndv) {
|
||||
me.match_bits = ((uint64_t) endpoint->send_count << 32) | length;
|
||||
|
Загрузка…
x
Ссылка в новой задаче
Block a user