ompi_mtl_ofi 15 ompi/mca/mtl/ofi/mtl_ofi.c mca_mtl_ofi_module_t ompi_mtl_ofi = { ompi_mtl_ofi 57 ompi/mca/mtl/ofi/mtl_ofi.c int num_peers_limit = (1 << ompi_mtl_ofi.num_bits_source_rank) - 1; ompi_mtl_ofi 59 ompi/mca/mtl/ofi/mtl_ofi.c namelen = ompi_mtl_ofi.epnamelen; ompi_mtl_ofi 62 ompi/mca/mtl/ofi/mtl_ofi.c if ((false == ompi_mtl_ofi.fi_cq_data) && ompi_mtl_ofi 63 ompi/mca/mtl/ofi/mtl_ofi.c OPAL_UNLIKELY(((int) (nprocs + ompi_mtl_ofi.num_peers) > num_peers_limit))) { ompi_mtl_ofi 67 ompi/mca/mtl/ofi/mtl_ofi.c __FILE__, __LINE__, ompi_mtl_ofi.provider_name); ompi_mtl_ofi 113 ompi/mca/mtl/ofi/mtl_ofi.c count = fi_av_insert(ompi_mtl_ofi.av, ep_names, nprocs, fi_addrs, 0, NULL); ompi_mtl_ofi 136 ompi/mca/mtl/ofi/mtl_ofi.c endpoint->mtl_ofi_module = &ompi_mtl_ofi; ompi_mtl_ofi 144 ompi/mca/mtl/ofi/mtl_ofi.c ompi_mtl_ofi.num_peers += nprocs; ompi_mtl_ofi 171 ompi/mca/mtl/ofi/mtl_ofi.c ret = fi_av_remove(ompi_mtl_ofi.av, &endpoint->peer_fiaddr, 1, 0); ompi_mtl_ofi 48 ompi/mca/mtl/ofi/mtl_ofi.h extern mca_mtl_ofi_module_t ompi_mtl_ofi; ompi_mtl_ofi 83 ompi/mca/mtl/ofi/mtl_ofi.h OPAL_LIKELY(!opal_mutex_atomic_trylock(&ompi_mtl_ofi.ofi_ctxt[ctxt_id].context_lock)) ompi_mtl_ofi 86 ompi/mca/mtl/ofi/mtl_ofi.h opal_mutex_atomic_unlock(&ompi_mtl_ofi.ofi_ctxt[ctxt_id].context_lock) ompi_mtl_ofi 105 ompi/mca/mtl/ofi/mtl_ofi.h ret = fi_cq_read(ompi_mtl_ofi.ofi_ctxt[ctxt_id].cq, (void *)&wc, ompi_mtl_ofi 106 ompi/mca/mtl/ofi/mtl_ofi.h ompi_mtl_ofi.ofi_progress_event_count); ompi_mtl_ofi 129 ompi/mca/mtl/ofi/mtl_ofi.h ret = fi_cq_readerr(ompi_mtl_ofi.ofi_ctxt[ctxt_id].cq, ompi_mtl_ofi 175 ompi/mca/mtl/ofi/mtl_ofi.h if (ompi_mtl_ofi.mpi_thread_multiple) { ompi_mtl_ofi 190 ompi/mca/mtl/ofi/mtl_ofi.h if (OPAL_UNLIKELY((count == 0) && ompi_mtl_ofi.mpi_thread_multiple && ompi_mtl_ofi 192 ompi/mca/mtl/ofi/mtl_ofi.h for (i = 0; i < ompi_mtl_ofi.total_ctxts_used - 1; i++) { ompi_mtl_ofi 193 ompi/mca/mtl/ofi/mtl_ofi.h ctxt_id = (ctxt_id + 1) % ompi_mtl_ofi.total_ctxts_used; ompi_mtl_ofi 334 ompi/mca/mtl/ofi/mtl_ofi.h if (0 == ompi_mtl_ofi.thread_grouping) { ompi_mtl_ofi 338 ompi/mca/mtl/ofi/mtl_ofi.h return ompi_mtl_ofi.comm_to_context[comm_id]; ompi_mtl_ofi 365 ompi/mca/mtl/ofi/mtl_ofi.h MTL_OFI_RETRY_UNTIL_DONE(fi_trecv(ompi_mtl_ofi.ofi_ctxt[ctxt_id].rx_ep, ompi_mtl_ofi 370 ompi/mca/mtl/ofi/mtl_ofi.h *match_bits | ompi_mtl_ofi.sync_send_ack, ompi_mtl_ofi 421 ompi/mca/mtl/ofi/mtl_ofi.h sep_peer_fiaddr = fi_rx_addr(endpoint->peer_fiaddr, ctxt_id, ompi_mtl_ofi.rx_ctx_bits); ompi_mtl_ofi 448 ompi/mca/mtl/ofi/mtl_ofi.h if (ompi_mtl_ofi.max_inject_size >= length) { ompi_mtl_ofi 450 ompi/mca/mtl/ofi/mtl_ofi.h MTL_OFI_RETRY_UNTIL_DONE(fi_tinjectdata(ompi_mtl_ofi.ofi_ctxt[ctxt_id].tx_ep, ompi_mtl_ofi 457 ompi/mca/mtl/ofi/mtl_ofi.h MTL_OFI_RETRY_UNTIL_DONE(fi_tinject(ompi_mtl_ofi.ofi_ctxt[ctxt_id].tx_ep, ompi_mtl_ofi 468 ompi/mca/mtl/ofi/mtl_ofi.h fi_cancel((fid_t)ompi_mtl_ofi.ofi_ctxt[ctxt_id].tx_ep, &ack_req->ctx); ompi_mtl_ofi 478 ompi/mca/mtl/ofi/mtl_ofi.h MTL_OFI_RETRY_UNTIL_DONE(fi_tsenddata(ompi_mtl_ofi.ofi_ctxt[ctxt_id].tx_ep, ompi_mtl_ofi 487 ompi/mca/mtl/ofi/mtl_ofi.h MTL_OFI_RETRY_UNTIL_DONE(fi_tsend(ompi_mtl_ofi.ofi_ctxt[ctxt_id].tx_ep, ompi_mtl_ofi 553 ompi/mca/mtl/ofi/mtl_ofi.h sep_peer_fiaddr = fi_rx_addr(endpoint->peer_fiaddr, ctxt_id, ompi_mtl_ofi.rx_ctx_bits); ompi_mtl_ofi 580 ompi/mca/mtl/ofi/mtl_ofi.h MTL_OFI_RETRY_UNTIL_DONE(fi_tsenddata(ompi_mtl_ofi.ofi_ctxt[ctxt_id].tx_ep, ompi_mtl_ofi 589 ompi/mca/mtl/ofi/mtl_ofi.h MTL_OFI_RETRY_UNTIL_DONE(fi_tsend(ompi_mtl_ofi.ofi_ctxt[ctxt_id].tx_ep, ompi_mtl_ofi 689 ompi/mca/mtl/ofi/mtl_ofi.h if (ompi_mtl_ofi.any_addr == ofi_req->remote_addr) { ompi_mtl_ofi 692 ompi/mca/mtl/ofi/mtl_ofi.h ofi_req->remote_addr = fi_rx_addr(endpoint->peer_fiaddr, ctxt_id, ompi_mtl_ofi.rx_ctx_bits); ompi_mtl_ofi 704 ompi/mca/mtl/ofi/mtl_ofi.h tagged_msg.tag = (wc->tag | ompi_mtl_ofi.sync_send_ack) & ~ompi_mtl_ofi.sync_send; ompi_mtl_ofi 708 ompi/mca/mtl/ofi/mtl_ofi.h MTL_OFI_RETRY_UNTIL_DONE(fi_tsendmsg(ompi_mtl_ofi.ofi_ctxt[ctxt_id].tx_ep, ompi_mtl_ofi 761 ompi/mca/mtl/ofi/mtl_ofi.h fi_addr_t remote_addr = ompi_mtl_ofi.any_addr; ompi_mtl_ofi 776 ompi/mca/mtl/ofi/mtl_ofi.h remote_addr = fi_rx_addr(endpoint->peer_fiaddr, ctxt_id, ompi_mtl_ofi.rx_ctx_bits); ompi_mtl_ofi 807 ompi/mca/mtl/ofi/mtl_ofi.h MTL_OFI_RETRY_UNTIL_DONE(fi_trecv(ompi_mtl_ofi.ofi_ctxt[ctxt_id].rx_ep, ompi_mtl_ofi 929 ompi/mca/mtl/ofi/mtl_ofi.h MTL_OFI_RETRY_UNTIL_DONE(fi_trecvmsg(ompi_mtl_ofi.ofi_ctxt[ctxt_id].rx_ep, &msg, msgflags), ret); ompi_mtl_ofi 981 ompi/mca/mtl/ofi/mtl_ofi.h fi_addr_t remote_proc = ompi_mtl_ofi.any_addr; ompi_mtl_ofi 996 ompi/mca/mtl/ofi/mtl_ofi.h remote_proc = fi_rx_addr(endpoint->peer_fiaddr, ctxt_id, ompi_mtl_ofi.rx_ctx_bits); ompi_mtl_ofi 1031 ompi/mca/mtl/ofi/mtl_ofi.h MTL_OFI_RETRY_UNTIL_DONE(fi_trecvmsg(ompi_mtl_ofi.ofi_ctxt[ctxt_id].rx_ep, &msg, msgflags), ret); ompi_mtl_ofi 1070 ompi/mca/mtl/ofi/mtl_ofi.h fi_addr_t remote_proc = ompi_mtl_ofi.any_addr; ompi_mtl_ofi 1093 ompi/mca/mtl/ofi/mtl_ofi.h remote_proc = fi_rx_addr(endpoint->peer_fiaddr, ctxt_id, ompi_mtl_ofi.rx_ctx_bits); ompi_mtl_ofi 1129 ompi/mca/mtl/ofi/mtl_ofi.h MTL_OFI_RETRY_UNTIL_DONE(fi_trecvmsg(ompi_mtl_ofi.ofi_ctxt[ctxt_id].rx_ep, &msg, msgflags), ret); ompi_mtl_ofi 1197 ompi/mca/mtl/ofi/mtl_ofi.h ret = fi_cancel((fid_t)ompi_mtl_ofi.ofi_ctxt[ctxt_id].rx_ep, ompi_mtl_ofi 1224 ompi/mca/mtl/ofi/mtl_ofi.h int ctxt_id = ompi_mtl_ofi.total_ctxts_used; ompi_mtl_ofi 1227 ompi/mca/mtl/ofi/mtl_ofi.h cq_attr.size = ompi_mtl_ofi.ofi_progress_event_count; ompi_mtl_ofi 1244 ompi/mca/mtl/ofi/mtl_ofi.h if (ompi_mtl_ofi.num_ofi_contexts <= ompi_mtl_ofi.total_ctxts_used) { ompi_mtl_ofi 1245 ompi/mca/mtl/ofi/mtl_ofi.h ompi_mtl_ofi.comm_to_context[comm->c_contextid] = comm->c_contextid % ompi_mtl_ofi 1246 ompi/mca/mtl/ofi/mtl_ofi.h ompi_mtl_ofi.total_ctxts_used; ompi_mtl_ofi 1247 ompi/mca/mtl/ofi/mtl_ofi.h if (!ompi_mtl_ofi.threshold_comm_context_id) { ompi_mtl_ofi 1248 ompi/mca/mtl/ofi/mtl_ofi.h ompi_mtl_ofi.threshold_comm_context_id = comm->c_contextid; ompi_mtl_ofi 1258 ompi/mca/mtl/ofi/mtl_ofi.h ret = fi_tx_context(ompi_mtl_ofi.sep, ctxt_id, NULL, &ompi_mtl_ofi.ofi_ctxt[ctxt_id].tx_ep, NULL); ompi_mtl_ofi 1264 ompi/mca/mtl/ofi/mtl_ofi.h ret = fi_rx_context(ompi_mtl_ofi.sep, ctxt_id, NULL, &ompi_mtl_ofi.ofi_ctxt[ctxt_id].rx_ep, NULL); ompi_mtl_ofi 1270 ompi/mca/mtl/ofi/mtl_ofi.h ret = fi_cq_open(ompi_mtl_ofi.domain, &cq_attr, &ompi_mtl_ofi.ofi_ctxt[ctxt_id].cq, NULL); ompi_mtl_ofi 1277 ompi/mca/mtl/ofi/mtl_ofi.h ret = fi_ep_bind(ompi_mtl_ofi.ofi_ctxt[ctxt_id].tx_ep, (fid_t)ompi_mtl_ofi.ofi_ctxt[ctxt_id].cq, ompi_mtl_ofi 1284 ompi/mca/mtl/ofi/mtl_ofi.h ret = fi_ep_bind(ompi_mtl_ofi.ofi_ctxt[ctxt_id].rx_ep, (fid_t)ompi_mtl_ofi.ofi_ctxt[ctxt_id].cq, ompi_mtl_ofi 1292 ompi/mca/mtl/ofi/mtl_ofi.h ret = fi_enable(ompi_mtl_ofi.ofi_ctxt[ctxt_id].tx_ep); ompi_mtl_ofi 1298 ompi/mca/mtl/ofi/mtl_ofi.h ret = fi_enable(ompi_mtl_ofi.ofi_ctxt[ctxt_id].rx_ep); ompi_mtl_ofi 1306 ompi/mca/mtl/ofi/mtl_ofi.h OBJ_CONSTRUCT(&ompi_mtl_ofi.ofi_ctxt[ctxt_id].context_lock, opal_mutex_t); ompi_mtl_ofi 1318 ompi/mca/mtl/ofi/mtl_ofi.h ompi_mtl_ofi.comm_to_context[comm->c_contextid] = ompi_mtl_ofi.total_ctxts_used; ompi_mtl_ofi 1319 ompi/mca/mtl/ofi/mtl_ofi.h ompi_mtl_ofi.total_ctxts_used++; ompi_mtl_ofi 1324 ompi/mca/mtl/ofi/mtl_ofi.h if (ompi_mtl_ofi.ofi_ctxt[ctxt_id].tx_ep) { ompi_mtl_ofi 1325 ompi/mca/mtl/ofi/mtl_ofi.h (void) fi_close((fid_t)ompi_mtl_ofi.ofi_ctxt[ctxt_id].tx_ep); ompi_mtl_ofi 1328 ompi/mca/mtl/ofi/mtl_ofi.h if (ompi_mtl_ofi.ofi_ctxt[ctxt_id].rx_ep) { ompi_mtl_ofi 1329 ompi/mca/mtl/ofi/mtl_ofi.h (void) fi_close((fid_t)ompi_mtl_ofi.ofi_ctxt[ctxt_id].rx_ep); ompi_mtl_ofi 1332 ompi/mca/mtl/ofi/mtl_ofi.h if (ompi_mtl_ofi.ofi_ctxt[ctxt_id].cq) { ompi_mtl_ofi 1333 ompi/mca/mtl/ofi/mtl_ofi.h (void) fi_close((fid_t)ompi_mtl_ofi.ofi_ctxt[ctxt_id].cq); ompi_mtl_ofi 1350 ompi/mca/mtl/ofi/mtl_ofi.h if (ompi_mtl_ofi.thread_grouping && ompi_mtl_ofi 1351 ompi/mca/mtl/ofi/mtl_ofi.h ompi_mtl_ofi.threshold_comm_context_id && ompi_mtl_ofi 1352 ompi/mca/mtl/ofi/mtl_ofi.h ((uint32_t) ompi_mtl_ofi.threshold_comm_context_id <= comm->c_contextid)) { ompi_mtl_ofi 1356 ompi/mca/mtl/ofi/mtl_ofi.h ctxt_id = ompi_mtl_ofi.thread_grouping ? ompi_mtl_ofi 1357 ompi/mca/mtl/ofi/mtl_ofi.h ompi_mtl_ofi.comm_to_context[comm->c_contextid] : 0; ompi_mtl_ofi 1363 ompi/mca/mtl/ofi/mtl_ofi.h if ((ret = fi_close((fid_t)ompi_mtl_ofi.ofi_ctxt[ctxt_id].tx_ep))) { ompi_mtl_ofi 1367 ompi/mca/mtl/ofi/mtl_ofi.h if ((ret = fi_close((fid_t)ompi_mtl_ofi.ofi_ctxt[ctxt_id].rx_ep))) { ompi_mtl_ofi 1371 ompi/mca/mtl/ofi/mtl_ofi.h if ((ret = fi_close((fid_t)ompi_mtl_ofi.ofi_ctxt[ctxt_id].cq))) { ompi_mtl_ofi 1377 ompi/mca/mtl/ofi/mtl_ofi.h OBJ_DESTRUCT(&ompi_mtl_ofi.ofi_ctxt[ctxt_id].context_lock); ompi_mtl_ofi 1395 ompi/mca/mtl/ofi/mtl_ofi.h mca_mtl_ofi_ep_type ep_type = (0 == ompi_mtl_ofi.enable_sep) ? ompi_mtl_ofi 1402 ompi/mca/mtl/ofi/mtl_ofi.h if ((ompi_mtl_ofi.thread_grouping && (MPI_COMM_SELF != comm)) || ompi_mtl_ofi 1406 ompi/mca/mtl/ofi/mtl_ofi.h (!ompi_mtl_ofi.thread_grouping && (MPI_COMM_WORLD == comm))) { ompi_mtl_ofi 1426 ompi/mca/mtl/ofi/mtl_ofi.h mca_mtl_ofi_ep_type ep_type = (0 == ompi_mtl_ofi.enable_sep) ? ompi_mtl_ofi 1432 ompi/mca/mtl/ofi/mtl_ofi.h if ((ompi_mtl_ofi.thread_grouping && (MPI_COMM_SELF != comm)) || ompi_mtl_ofi 1433 ompi/mca/mtl/ofi/mtl_ofi.h (!ompi_mtl_ofi.thread_grouping && (MPI_COMM_WORLD == comm))) { ompi_mtl_ofi 1453 ompi/mca/mtl/ofi/mtl_ofi.h ompi_mtl_ofi.fi_cq_data); ompi_mtl_ofi 1468 ompi/mca/mtl/ofi/mtl_ofi.h ompi_mtl_ofi.fi_cq_data); ompi_mtl_ofi 1481 ompi/mca/mtl/ofi/mtl_ofi.h ompi_mtl_ofi.fi_cq_data); ompi_mtl_ofi 1494 ompi/mca/mtl/ofi/mtl_ofi.h ompi_mtl_ofi.fi_cq_data); ompi_mtl_ofi 1508 ompi/mca/mtl/ofi/mtl_ofi.h ompi_mtl_ofi.fi_cq_data); ompi_mtl_ofi 151 ompi/mca/mtl/ofi/mtl_ofi_component.c ompi_mtl_ofi.ofi_progress_event_count = MTL_OFI_MAX_PROG_EVENT_COUNT; ompi_mtl_ofi 152 ompi/mca/mtl/ofi/mtl_ofi_component.c opal_asprintf(&desc, "Max number of events to read each call to OFI progress (default: %d events will be read per OFI progress call)", ompi_mtl_ofi.ofi_progress_event_count); ompi_mtl_ofi 159 ompi/mca/mtl/ofi/mtl_ofi_component.c &ompi_mtl_ofi.ofi_progress_event_count); ompi_mtl_ofi 238 ompi/mca/mtl/ofi/mtl_ofi_component.c ompi_mtl_ofi.enable_sep = 0; ompi_mtl_ofi 245 ompi/mca/mtl/ofi/mtl_ofi_component.c &ompi_mtl_ofi.enable_sep); ompi_mtl_ofi 247 ompi/mca/mtl/ofi/mtl_ofi_component.c ompi_mtl_ofi.thread_grouping = 0; ompi_mtl_ofi 254 ompi/mca/mtl/ofi/mtl_ofi_component.c &ompi_mtl_ofi.thread_grouping); ompi_mtl_ofi 261 ompi/mca/mtl/ofi/mtl_ofi_component.c ompi_mtl_ofi.num_ofi_contexts = 1; ompi_mtl_ofi 268 ompi/mca/mtl/ofi/mtl_ofi_component.c &ompi_mtl_ofi.num_ofi_contexts); ompi_mtl_ofi 278 ompi/mca/mtl/ofi/mtl_ofi_component.c ompi_mtl_ofi.base.mtl_request_size = ompi_mtl_ofi 281 ompi/mca/mtl/ofi/mtl_ofi_component.c ompi_mtl_ofi.domain = NULL; ompi_mtl_ofi 282 ompi/mca/mtl/ofi/mtl_ofi_component.c ompi_mtl_ofi.av = NULL; ompi_mtl_ofi 283 ompi/mca/mtl/ofi/mtl_ofi_component.c ompi_mtl_ofi.sep = NULL; ompi_mtl_ofi 307 ompi/mca/mtl/ofi/mtl_ofi_component.c *module = (mca_base_module_t *)&ompi_mtl_ofi.base; ompi_mtl_ofi 431 ompi/mca/mtl/ofi/mtl_ofi_component.c ompi_mtl_ofi.base.mtl_max_tag = (int)((1ULL << (MTL_OFI_TAG_BIT_COUNT_1 - 1)) - 1); ompi_mtl_ofi 433 ompi/mca/mtl/ofi/mtl_ofi_component.c ompi_mtl_ofi.source_rank_tag_mask = MTL_OFI_SOURCE_TAG_MASK_1; ompi_mtl_ofi 434 ompi/mca/mtl/ofi/mtl_ofi_component.c ompi_mtl_ofi.num_bits_source_rank = MTL_OFI_SOURCE_BIT_COUNT_1; ompi_mtl_ofi 435 ompi/mca/mtl/ofi/mtl_ofi_component.c ompi_mtl_ofi.source_rank_mask = MTL_OFI_SOURCE_MASK_1; ompi_mtl_ofi 437 ompi/mca/mtl/ofi/mtl_ofi_component.c ompi_mtl_ofi.mpi_tag_mask = MTL_OFI_TAG_MASK_1; ompi_mtl_ofi 438 ompi/mca/mtl/ofi/mtl_ofi_component.c ompi_mtl_ofi.num_bits_mpi_tag = MTL_OFI_TAG_BIT_COUNT_1; ompi_mtl_ofi 440 ompi/mca/mtl/ofi/mtl_ofi_component.c ompi_mtl_ofi.sync_send = MTL_OFI_SYNC_SEND_1; ompi_mtl_ofi 441 ompi/mca/mtl/ofi/mtl_ofi_component.c ompi_mtl_ofi.sync_send_ack = MTL_OFI_SYNC_SEND_ACK_1; ompi_mtl_ofi 442 ompi/mca/mtl/ofi/mtl_ofi_component.c ompi_mtl_ofi.sync_proto_mask = MTL_OFI_PROTO_MASK_1; ompi_mtl_ofi 446 ompi/mca/mtl/ofi/mtl_ofi_component.c ompi_mtl_ofi.base.mtl_max_tag = (int)((1ULL << (MTL_OFI_TAG_BIT_COUNT_2 - 1)) - 1); ompi_mtl_ofi 448 ompi/mca/mtl/ofi/mtl_ofi_component.c ompi_mtl_ofi.source_rank_tag_mask = MTL_OFI_SOURCE_TAG_MASK_2; ompi_mtl_ofi 449 ompi/mca/mtl/ofi/mtl_ofi_component.c ompi_mtl_ofi.num_bits_source_rank = MTL_OFI_SOURCE_BIT_COUNT_2; ompi_mtl_ofi 450 ompi/mca/mtl/ofi/mtl_ofi_component.c ompi_mtl_ofi.source_rank_mask = MTL_OFI_SOURCE_MASK_2; ompi_mtl_ofi 452 ompi/mca/mtl/ofi/mtl_ofi_component.c ompi_mtl_ofi.mpi_tag_mask = MTL_OFI_TAG_MASK_2; ompi_mtl_ofi 453 ompi/mca/mtl/ofi/mtl_ofi_component.c ompi_mtl_ofi.num_bits_mpi_tag = MTL_OFI_TAG_BIT_COUNT_2; ompi_mtl_ofi 455 ompi/mca/mtl/ofi/mtl_ofi_component.c ompi_mtl_ofi.sync_send = MTL_OFI_SYNC_SEND_2; ompi_mtl_ofi 456 ompi/mca/mtl/ofi/mtl_ofi_component.c ompi_mtl_ofi.sync_send_ack = MTL_OFI_SYNC_SEND_ACK_2; ompi_mtl_ofi 457 ompi/mca/mtl/ofi/mtl_ofi_component.c ompi_mtl_ofi.sync_proto_mask = MTL_OFI_PROTO_MASK_2; ompi_mtl_ofi 461 ompi/mca/mtl/ofi/mtl_ofi_component.c ompi_mtl_ofi.base.mtl_max_tag = (int)((1ULL << (MTL_OFI_TAG_BIT_COUNT_DATA - 1)) - 1); ompi_mtl_ofi 463 ompi/mca/mtl/ofi/mtl_ofi_component.c ompi_mtl_ofi.mpi_tag_mask = MTL_OFI_TAG_MASK_DATA; ompi_mtl_ofi 465 ompi/mca/mtl/ofi/mtl_ofi_component.c ompi_mtl_ofi.sync_send = MTL_OFI_SYNC_SEND_DATA; ompi_mtl_ofi 466 ompi/mca/mtl/ofi/mtl_ofi_component.c ompi_mtl_ofi.sync_send_ack = MTL_OFI_SYNC_SEND_ACK_DATA; ompi_mtl_ofi 467 ompi/mca/mtl/ofi/mtl_ofi_component.c ompi_mtl_ofi.sync_proto_mask = MTL_OFI_PROTO_MASK_DATA; ompi_mtl_ofi 473 ompi/mca/mtl/ofi/mtl_ofi_component.c ompi_mtl_ofi.comm_to_context = calloc(arr_size, sizeof(int)); \ ompi_mtl_ofi 474 ompi/mca/mtl/ofi/mtl_ofi_component.c if (OPAL_UNLIKELY(!ompi_mtl_ofi.comm_to_context)) { \ ompi_mtl_ofi 484 ompi/mca/mtl/ofi/mtl_ofi_component.c ompi_mtl_ofi.ofi_ctxt = (mca_mtl_ofi_context_t *) malloc(ompi_mtl_ofi.num_ofi_contexts * \ ompi_mtl_ofi 486 ompi/mca/mtl/ofi/mtl_ofi_component.c if (OPAL_UNLIKELY(!ompi_mtl_ofi.ofi_ctxt)) { \ ompi_mtl_ofi 500 ompi/mca/mtl/ofi/mtl_ofi_component.c ompi_mtl_ofi.num_ofi_contexts; ompi_mtl_ofi 502 ompi/mca/mtl/ofi/mtl_ofi_component.c ret = fi_scalable_ep(ompi_mtl_ofi.domain, prov, &ompi_mtl_ofi.sep, NULL); ompi_mtl_ofi 511 ompi/mca/mtl/ofi/mtl_ofi_component.c ompi_mtl_ofi.rx_ctx_bits = 0; ompi_mtl_ofi 512 ompi/mca/mtl/ofi/mtl_ofi_component.c while (ompi_mtl_ofi.num_ofi_contexts >> ++ompi_mtl_ofi.rx_ctx_bits); ompi_mtl_ofi 515 ompi/mca/mtl/ofi/mtl_ofi_component.c av_attr.rx_ctx_bits = ompi_mtl_ofi.rx_ctx_bits; ompi_mtl_ofi 516 ompi/mca/mtl/ofi/mtl_ofi_component.c av_attr.count = ompi_mtl_ofi.num_ofi_contexts * universe_size; ompi_mtl_ofi 517 ompi/mca/mtl/ofi/mtl_ofi_component.c ret = fi_av_open(ompi_mtl_ofi.domain, &av_attr, &ompi_mtl_ofi.av, NULL); ompi_mtl_ofi 524 ompi/mca/mtl/ofi/mtl_ofi_component.c ret = fi_scalable_ep_bind(ompi_mtl_ofi.sep, (fid_t)ompi_mtl_ofi.av, 0); ompi_mtl_ofi 536 ompi/mca/mtl/ofi/mtl_ofi_component.c num_ofi_ctxts = ompi_mtl_ofi.thread_grouping ? ompi_mtl_ofi 537 ompi/mca/mtl/ofi/mtl_ofi_component.c ompi_mtl_ofi.num_ofi_contexts + 2 : 1; ompi_mtl_ofi 540 ompi/mca/mtl/ofi/mtl_ofi_component.c ompi_mtl_ofi.total_ctxts_used = 0; ompi_mtl_ofi 541 ompi/mca/mtl/ofi/mtl_ofi_component.c ompi_mtl_ofi.threshold_comm_context_id = 0; ompi_mtl_ofi 555 ompi/mca/mtl/ofi/mtl_ofi_component.c cq_attr.size = ompi_mtl_ofi.ofi_progress_event_count; ompi_mtl_ofi 558 ompi/mca/mtl/ofi/mtl_ofi_component.c ompi_mtl_ofi.num_ofi_contexts = 1; ompi_mtl_ofi 559 ompi/mca/mtl/ofi/mtl_ofi_component.c ret = fi_endpoint(ompi_mtl_ofi.domain, /* In: Domain object */ ompi_mtl_ofi 561 ompi/mca/mtl/ofi/mtl_ofi_component.c &ompi_mtl_ofi.sep, /* Out: Endpoint object */ ompi_mtl_ofi 578 ompi/mca/mtl/ofi/mtl_ofi_component.c ret = fi_av_open(ompi_mtl_ofi.domain, &av_attr, &ompi_mtl_ofi.av, NULL); ompi_mtl_ofi 584 ompi/mca/mtl/ofi/mtl_ofi_component.c ret = fi_ep_bind(ompi_mtl_ofi.sep, ompi_mtl_ofi 585 ompi/mca/mtl/ofi/mtl_ofi_component.c (fid_t)ompi_mtl_ofi.av, ompi_mtl_ofi 597 ompi/mca/mtl/ofi/mtl_ofi_component.c ompi_mtl_ofi.ofi_ctxt[0].tx_ep = ompi_mtl_ofi.sep; ompi_mtl_ofi 598 ompi/mca/mtl/ofi/mtl_ofi_component.c ompi_mtl_ofi.ofi_ctxt[0].rx_ep = ompi_mtl_ofi.sep; ompi_mtl_ofi 600 ompi/mca/mtl/ofi/mtl_ofi_component.c ret = fi_cq_open(ompi_mtl_ofi.domain, &cq_attr, &ompi_mtl_ofi.ofi_ctxt[0].cq, NULL); ompi_mtl_ofi 607 ompi/mca/mtl/ofi/mtl_ofi_component.c ret = fi_ep_bind(ompi_mtl_ofi.sep, (fid_t)ompi_mtl_ofi.ofi_ctxt[0].cq, ompi_mtl_ofi 659 ompi/mca/mtl/ofi/mtl_ofi_component.c ompi_mtl_ofi.mpi_thread_multiple = true; ompi_mtl_ofi 662 ompi/mca/mtl/ofi/mtl_ofi_component.c ompi_mtl_ofi.mpi_thread_multiple = false; ompi_mtl_ofi 749 ompi/mca/mtl/ofi/mtl_ofi_component.c ompi_mtl_ofi.fi_cq_data = false; ompi_mtl_ofi 761 ompi/mca/mtl/ofi/mtl_ofi_component.c ompi_mtl_ofi.fi_cq_data = true; ompi_mtl_ofi 766 ompi/mca/mtl/ofi/mtl_ofi_component.c ompi_mtl_ofi.fi_cq_data = false; ompi_mtl_ofi 775 ompi/mca/mtl/ofi/mtl_ofi_component.c ompi_mtl_ofi_send_symtable_init(&ompi_mtl_ofi.sym_table); ompi_mtl_ofi 776 ompi/mca/mtl/ofi/mtl_ofi_component.c ompi_mtl_ofi.base.mtl_send = ompi_mtl_ofi 777 ompi/mca/mtl/ofi/mtl_ofi_component.c ompi_mtl_ofi.sym_table.ompi_mtl_ofi_send[ompi_mtl_ofi.fi_cq_data]; ompi_mtl_ofi 779 ompi/mca/mtl/ofi/mtl_ofi_component.c ompi_mtl_ofi_isend_symtable_init(&ompi_mtl_ofi.sym_table); ompi_mtl_ofi 780 ompi/mca/mtl/ofi/mtl_ofi_component.c ompi_mtl_ofi.base.mtl_isend = ompi_mtl_ofi 781 ompi/mca/mtl/ofi/mtl_ofi_component.c ompi_mtl_ofi.sym_table.ompi_mtl_ofi_isend[ompi_mtl_ofi.fi_cq_data]; ompi_mtl_ofi 783 ompi/mca/mtl/ofi/mtl_ofi_component.c ompi_mtl_ofi_irecv_symtable_init(&ompi_mtl_ofi.sym_table); ompi_mtl_ofi 784 ompi/mca/mtl/ofi/mtl_ofi_component.c ompi_mtl_ofi.base.mtl_irecv = ompi_mtl_ofi 785 ompi/mca/mtl/ofi/mtl_ofi_component.c ompi_mtl_ofi.sym_table.ompi_mtl_ofi_irecv[ompi_mtl_ofi.fi_cq_data]; ompi_mtl_ofi 787 ompi/mca/mtl/ofi/mtl_ofi_component.c ompi_mtl_ofi_iprobe_symtable_init(&ompi_mtl_ofi.sym_table); ompi_mtl_ofi 788 ompi/mca/mtl/ofi/mtl_ofi_component.c ompi_mtl_ofi.base.mtl_iprobe = ompi_mtl_ofi 789 ompi/mca/mtl/ofi/mtl_ofi_component.c ompi_mtl_ofi.sym_table.ompi_mtl_ofi_iprobe[ompi_mtl_ofi.fi_cq_data]; ompi_mtl_ofi 791 ompi/mca/mtl/ofi/mtl_ofi_component.c ompi_mtl_ofi_improbe_symtable_init(&ompi_mtl_ofi.sym_table); ompi_mtl_ofi 792 ompi/mca/mtl/ofi/mtl_ofi_component.c ompi_mtl_ofi.base.mtl_improbe = ompi_mtl_ofi 793 ompi/mca/mtl/ofi/mtl_ofi_component.c ompi_mtl_ofi.sym_table.ompi_mtl_ofi_improbe[ompi_mtl_ofi.fi_cq_data]; ompi_mtl_ofi 817 ompi/mca/mtl/ofi/mtl_ofi_component.c ompi_mtl_ofi.base.mtl_max_contextid = (int)((1ULL << ofi_tag_bits_for_cid) - 1); ompi_mtl_ofi 818 ompi/mca/mtl/ofi/mtl_ofi_component.c ompi_mtl_ofi.num_peers = 0; ompi_mtl_ofi 827 ompi/mca/mtl/ofi/mtl_ofi_component.c if (1 == ompi_mtl_ofi.enable_sep) { ompi_mtl_ofi 842 ompi/mca/mtl/ofi/mtl_ofi_component.c if (1 == ompi_mtl_ofi.thread_grouping) { ompi_mtl_ofi 856 ompi/mca/mtl/ofi/mtl_ofi_component.c &ompi_mtl_ofi.fabric, /* Out: Fabric handle */ ompi_mtl_ofi 871 ompi/mca/mtl/ofi/mtl_ofi_component.c ret = fi_domain(ompi_mtl_ofi.fabric, /* In: Fabric object */ ompi_mtl_ofi 873 ompi/mca/mtl/ofi/mtl_ofi_component.c &ompi_mtl_ofi.domain, /* Out: Domain oject */ ompi_mtl_ofi 886 ompi/mca/mtl/ofi/mtl_ofi_component.c ompi_mtl_ofi.max_inject_size = prov->tx_attr->inject_size; ompi_mtl_ofi 893 ompi/mca/mtl/ofi/mtl_ofi_component.c if (ompi_mtl_ofi.ofi_progress_event_count > MTL_OFI_MAX_PROG_EVENT_COUNT) { ompi_mtl_ofi 894 ompi/mca/mtl/ofi/mtl_ofi_component.c ompi_mtl_ofi.ofi_progress_event_count = MTL_OFI_MAX_PROG_EVENT_COUNT; ompi_mtl_ofi 918 ompi/mca/mtl/ofi/mtl_ofi_component.c if (1 == ompi_mtl_ofi.enable_sep) { ompi_mtl_ofi 939 ompi/mca/mtl/ofi/mtl_ofi_component.c if (max_ofi_ctxts < ompi_mtl_ofi.num_ofi_contexts) { ompi_mtl_ofi 943 ompi/mca/mtl/ofi/mtl_ofi_component.c ompi_mtl_ofi.num_ofi_contexts = max_ofi_ctxts; ompi_mtl_ofi 955 ompi/mca/mtl/ofi/mtl_ofi_component.c ompi_mtl_ofi.total_ctxts_used = 0; ompi_mtl_ofi 956 ompi/mca/mtl/ofi/mtl_ofi_component.c ompi_mtl_ofi.threshold_comm_context_id = 0; ompi_mtl_ofi 959 ompi/mca/mtl/ofi/mtl_ofi_component.c ret = fi_enable(ompi_mtl_ofi.sep); ompi_mtl_ofi 965 ompi/mca/mtl/ofi/mtl_ofi_component.c ompi_mtl_ofi.provider_name = strdup(prov->fabric_attr->prov_name); ompi_mtl_ofi 979 ompi/mca/mtl/ofi/mtl_ofi_component.c ret = fi_getname((fid_t)ompi_mtl_ofi.sep, ompi_mtl_ofi 998 ompi/mca/mtl/ofi/mtl_ofi_component.c ompi_mtl_ofi.epnamelen = namelen; ompi_mtl_ofi 1003 ompi/mca/mtl/ofi/mtl_ofi_component.c ompi_mtl_ofi.any_addr = FI_ADDR_UNSPEC; ompi_mtl_ofi 1005 ompi/mca/mtl/ofi/mtl_ofi_component.c return &ompi_mtl_ofi.base; ompi_mtl_ofi 1017 ompi/mca/mtl/ofi/mtl_ofi_component.c if (ompi_mtl_ofi.sep) { ompi_mtl_ofi 1018 ompi/mca/mtl/ofi/mtl_ofi_component.c (void) fi_close((fid_t)ompi_mtl_ofi.sep); ompi_mtl_ofi 1020 ompi/mca/mtl/ofi/mtl_ofi_component.c if (ompi_mtl_ofi.av) { ompi_mtl_ofi 1021 ompi/mca/mtl/ofi/mtl_ofi_component.c (void) fi_close((fid_t)ompi_mtl_ofi.av); ompi_mtl_ofi 1023 ompi/mca/mtl/ofi/mtl_ofi_component.c if ((0 == ompi_mtl_ofi.enable_sep) && ompi_mtl_ofi 1024 ompi/mca/mtl/ofi/mtl_ofi_component.c ompi_mtl_ofi.ofi_ctxt != NULL && ompi_mtl_ofi 1025 ompi/mca/mtl/ofi/mtl_ofi_component.c ompi_mtl_ofi.ofi_ctxt[0].cq) { ompi_mtl_ofi 1027 ompi/mca/mtl/ofi/mtl_ofi_component.c (void) fi_close((fid_t)ompi_mtl_ofi.ofi_ctxt[0].cq); ompi_mtl_ofi 1029 ompi/mca/mtl/ofi/mtl_ofi_component.c if (ompi_mtl_ofi.domain) { ompi_mtl_ofi 1030 ompi/mca/mtl/ofi/mtl_ofi_component.c (void) fi_close((fid_t)ompi_mtl_ofi.domain); ompi_mtl_ofi 1032 ompi/mca/mtl/ofi/mtl_ofi_component.c if (ompi_mtl_ofi.fabric) { ompi_mtl_ofi 1033 ompi/mca/mtl/ofi/mtl_ofi_component.c (void) fi_close((fid_t)ompi_mtl_ofi.fabric); ompi_mtl_ofi 1035 ompi/mca/mtl/ofi/mtl_ofi_component.c if (ompi_mtl_ofi.comm_to_context) { ompi_mtl_ofi 1036 ompi/mca/mtl/ofi/mtl_ofi_component.c free(ompi_mtl_ofi.comm_to_context); ompi_mtl_ofi 1038 ompi/mca/mtl/ofi/mtl_ofi_component.c if (ompi_mtl_ofi.ofi_ctxt) { ompi_mtl_ofi 1039 ompi/mca/mtl/ofi/mtl_ofi_component.c free(ompi_mtl_ofi.ofi_ctxt); ompi_mtl_ofi 1053 ompi/mca/mtl/ofi/mtl_ofi_component.c if ((ret = fi_close((fid_t)ompi_mtl_ofi.sep))) { ompi_mtl_ofi 1057 ompi/mca/mtl/ofi/mtl_ofi_component.c if ((ret = fi_close((fid_t)ompi_mtl_ofi.av))) { ompi_mtl_ofi 1061 ompi/mca/mtl/ofi/mtl_ofi_component.c if (0 == ompi_mtl_ofi.enable_sep) { ompi_mtl_ofi 1068 ompi/mca/mtl/ofi/mtl_ofi_component.c if ((ret = fi_close((fid_t)ompi_mtl_ofi.ofi_ctxt[0].cq))) { ompi_mtl_ofi 1073 ompi/mca/mtl/ofi/mtl_ofi_component.c if ((ret = fi_close((fid_t)ompi_mtl_ofi.domain))) { ompi_mtl_ofi 1077 ompi/mca/mtl/ofi/mtl_ofi_component.c if ((ret = fi_close((fid_t)ompi_mtl_ofi.fabric))) { ompi_mtl_ofi 1082 ompi/mca/mtl/ofi/mtl_ofi_component.c free(ompi_mtl_ofi.comm_to_context); ompi_mtl_ofi 1083 ompi/mca/mtl/ofi/mtl_ofi_component.c free(ompi_mtl_ofi.ofi_ctxt); ompi_mtl_ofi 97 ompi/mca/mtl/ofi/mtl_ofi_types.h extern mca_mtl_ofi_module_t ompi_mtl_ofi; ompi_mtl_ofi 160 ompi/mca/mtl/ofi/mtl_ofi_types.h *mask_bits = ompi_mtl_ofi.sync_proto_mask; ompi_mtl_ofi 169 ompi/mca/mtl/ofi/mtl_ofi_types.h *mask_bits |= (ompi_mtl_ofi.mpi_tag_mask>>1); ompi_mtl_ofi 171 ompi/mca/mtl/ofi/mtl_ofi_types.h *match_bits |= (ompi_mtl_ofi.mpi_tag_mask & tag); ompi_mtl_ofi 216 ompi/mca/mtl/ofi/mtl_ofi_types.h match_bits = (match_bits << ompi_mtl_ofi.num_bits_source_rank); ompi_mtl_ofi 217 ompi/mca/mtl/ofi/mtl_ofi_types.h match_bits |= (uint64_t)(source & ompi_mtl_ofi.source_rank_mask); ompi_mtl_ofi 218 ompi/mca/mtl/ofi/mtl_ofi_types.h match_bits = (match_bits << (ompi_mtl_ofi.num_bits_mpi_tag ompi_mtl_ofi 220 ompi/mca/mtl/ofi/mtl_ofi_types.h match_bits |= (tag & ompi_mtl_ofi.mpi_tag_mask); ompi_mtl_ofi 229 ompi/mca/mtl/ofi/mtl_ofi_types.h *mask_bits = ompi_mtl_ofi.sync_proto_mask; ompi_mtl_ofi 231 ompi/mca/mtl/ofi/mtl_ofi_types.h *match_bits = (*match_bits << ompi_mtl_ofi.num_bits_source_rank); ompi_mtl_ofi 234 ompi/mca/mtl/ofi/mtl_ofi_types.h *match_bits = (*match_bits << (ompi_mtl_ofi.num_bits_mpi_tag ompi_mtl_ofi 236 ompi/mca/mtl/ofi/mtl_ofi_types.h *mask_bits |= ompi_mtl_ofi.source_rank_tag_mask; ompi_mtl_ofi 238 ompi/mca/mtl/ofi/mtl_ofi_types.h *match_bits |= (uint64_t)(source & ompi_mtl_ofi.source_rank_mask); ompi_mtl_ofi 239 ompi/mca/mtl/ofi/mtl_ofi_types.h *match_bits = (*match_bits << (ompi_mtl_ofi.num_bits_mpi_tag ompi_mtl_ofi 248 ompi/mca/mtl/ofi/mtl_ofi_types.h *mask_bits |= (ompi_mtl_ofi.mpi_tag_mask>>1); ompi_mtl_ofi 250 ompi/mca/mtl/ofi/mtl_ofi_types.h *match_bits |= (ompi_mtl_ofi.mpi_tag_mask & tag); ompi_mtl_ofi 255 ompi/mca/mtl/ofi/mtl_ofi_types.h match_bits |= ompi_mtl_ofi.sync_send ompi_mtl_ofi 258 ompi/mca/mtl/ofi/mtl_ofi_types.h (ompi_mtl_ofi.sync_send == (ompi_mtl_ofi.sync_proto_mask & match_bits)) ompi_mtl_ofi 261 ompi/mca/mtl/ofi/mtl_ofi_types.h (ompi_mtl_ofi.sync_send_ack == (ompi_mtl_ofi.sync_proto_mask & match_bits)) ompi_mtl_ofi 264 ompi/mca/mtl/ofi/mtl_ofi_types.h ((int)(match_bits & ompi_mtl_ofi.mpi_tag_mask)) ompi_mtl_ofi 270 ompi/mca/mtl/ofi/mtl_ofi_types.h if (ompi_mtl_ofi.fi_cq_data) { ompi_mtl_ofi 275 ompi/mca/mtl/ofi/mtl_ofi_types.h ompi_mtl_ofi.num_bits_mpi_tag)) & ompi_mtl_ofi.source_rank_mask);