flowctl 127 ompi/mca/mtl/portals4/mtl_portals4.h ompi_mtl_portals4_flowctl_t flowctl; flowctl 586 ompi/mca/mtl/portals4/mtl_portals4_component.c 0 != opal_list_get_size(&ompi_mtl_portals4.flowctl.pending_sends))) { flowctl 39 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c ompi_mtl_portals4.flowctl.flowctl_active = false; flowctl 41 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c OBJ_CONSTRUCT(&ompi_mtl_portals4.flowctl.pending_sends, opal_list_t); flowctl 43 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c OBJ_CONSTRUCT(&ompi_mtl_portals4.flowctl.pending_fl, opal_free_list_t); flowctl 44 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c opal_free_list_init(&ompi_mtl_portals4.flowctl.pending_fl, flowctl 50 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c ompi_mtl_portals4.flowctl.max_send_slots = (ompi_mtl_portals4.send_queue_size - 3) / 3; flowctl 51 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c ompi_mtl_portals4.flowctl.send_slots = ompi_mtl_portals4.flowctl.max_send_slots; flowctl 53 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c ompi_mtl_portals4.flowctl.alert_req.type = portals4_req_flowctl; flowctl 54 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c ompi_mtl_portals4.flowctl.alert_req.event_callback = flowctl_alert_callback; flowctl 56 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c ompi_mtl_portals4.flowctl.fanout_req.type = portals4_req_flowctl; flowctl 57 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c ompi_mtl_portals4.flowctl.fanout_req.event_callback = flowctl_fanout_callback; flowctl 59 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c ompi_mtl_portals4.flowctl.epoch_counter = -1; flowctl 81 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c &ompi_mtl_portals4.flowctl.trigger_ct_h); flowctl 109 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c me.ct_handle = ompi_mtl_portals4.flowctl.trigger_ct_h; flowctl 116 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c &ompi_mtl_portals4.flowctl.trigger_me_h); flowctl 128 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c &ompi_mtl_portals4.flowctl.alert_ct_h); flowctl 140 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c me.ct_handle = ompi_mtl_portals4.flowctl.alert_ct_h; flowctl 146 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c &ompi_mtl_portals4.flowctl.alert_req, flowctl 147 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c &ompi_mtl_portals4.flowctl.alert_me_h); flowctl 157 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c &ompi_mtl_portals4.flowctl.fanin_ct_h); flowctl 170 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c me.ct_handle = ompi_mtl_portals4.flowctl.fanin_ct_h; flowctl 177 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c &ompi_mtl_portals4.flowctl.fanin_me_h); flowctl 187 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c &ompi_mtl_portals4.flowctl.fanout_ct_h); flowctl 199 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c me.ct_handle = ompi_mtl_portals4.flowctl.fanout_ct_h; flowctl 205 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c &ompi_mtl_portals4.flowctl.fanout_req, flowctl 206 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c &ompi_mtl_portals4.flowctl.fanout_me_h); flowctl 214 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c ompi_mtl_portals4.flowctl.num_children = 0; flowctl 216 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c gettimeofday(&ompi_mtl_portals4.flowctl.tv, NULL); flowctl 217 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c ompi_mtl_portals4.flowctl.backoff_count = 0; flowctl 229 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c PtlMEUnlink(ompi_mtl_portals4.flowctl.trigger_me_h); flowctl 230 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c PtlCTFree(ompi_mtl_portals4.flowctl.trigger_ct_h); flowctl 231 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c PtlMEUnlink(ompi_mtl_portals4.flowctl.alert_me_h); flowctl 232 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c PtlCTFree(ompi_mtl_portals4.flowctl.alert_ct_h); flowctl 233 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c PtlMEUnlink(ompi_mtl_portals4.flowctl.fanin_me_h); flowctl 234 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c PtlCTFree(ompi_mtl_portals4.flowctl.fanin_ct_h); flowctl 235 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c PtlMEUnlink(ompi_mtl_portals4.flowctl.fanout_me_h); flowctl 236 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c PtlCTFree(ompi_mtl_portals4.flowctl.fanout_ct_h); flowctl 254 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c if (ompi_mtl_portals4.flowctl.epoch_counter != -1) { flowctl 257 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c ompi_mtl_portals4.flowctl.epoch_counter = 0; flowctl 259 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c ompi_mtl_portals4.flowctl.num_procs = npeers; flowctl 260 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c if (0 == me) ompi_mtl_portals4.flowctl.i_am_root = true; flowctl 261 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c else ompi_mtl_portals4.flowctl.i_am_root = false; flowctl 264 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c ompi_mtl_portals4.flowctl.root.rank = 0; flowctl 265 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c if (false == ompi_mtl_portals4.flowctl.i_am_root) { flowctl 266 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c ompi_mtl_portals4.flowctl.parent.rank = (me - 1) / 2; flowctl 268 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c ompi_mtl_portals4.flowctl.me.rank = me; flowctl 271 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c ompi_mtl_portals4.flowctl.root = flowctl 273 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c if (false == ompi_mtl_portals4.flowctl.i_am_root) { flowctl 274 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c ompi_mtl_portals4.flowctl.parent = flowctl 277 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c ompi_mtl_portals4.flowctl.me = flowctl 284 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c ompi_mtl_portals4.flowctl.num_children++; flowctl 286 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c ompi_mtl_portals4.flowctl.children[i].rank = tmp; flowctl 287 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c else ompi_mtl_portals4.flowctl.children[i] = flowctl 292 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c return setup_alarm(ompi_mtl_portals4.flowctl.epoch_counter); flowctl 302 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c if (true == OPAL_ATOMIC_COMPARE_EXCHANGE_STRONG_32(&ompi_mtl_portals4.flowctl.flowctl_active, &_tmp_value, 1)) { flowctl 308 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c ompi_mtl_portals4.flowctl.root, flowctl 349 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c ompi_mtl_portals4.flowctl.flowctl_active = true; flowctl 350 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c epoch_counter = opal_atomic_add_fetch_64(&ompi_mtl_portals4.flowctl.epoch_counter, 1); flowctl 375 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c while (ompi_mtl_portals4.flowctl.send_slots != flowctl 376 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c ompi_mtl_portals4.flowctl.max_send_slots) { flowctl 392 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c ret = opal_list_sort(&ompi_mtl_portals4.flowctl.pending_sends, seqnum_compare); flowctl 408 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c ompi_mtl_portals4.flowctl.me, flowctl 441 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c if (ompi_mtl_portals4.flowctl.i_am_root) { flowctl 446 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c ompi_mtl_portals4.flowctl.me, flowctl 452 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c ompi_mtl_portals4.flowctl.trigger_ct_h, flowctl 453 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c (epoch * ompi_mtl_portals4.flowctl.num_procs) + 1); flowctl 463 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c for (i = 0 ; i < ompi_mtl_portals4.flowctl.num_children ; ++i) { flowctl 468 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c ompi_mtl_portals4.flowctl.children[i], flowctl 474 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c ompi_mtl_portals4.flowctl.alert_ct_h, flowctl 496 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c if (ompi_mtl_portals4.flowctl.i_am_root) { flowctl 497 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c ct.success = ompi_mtl_portals4.flowctl.epoch_counter * flowctl 498 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c ompi_mtl_portals4.flowctl.num_procs; flowctl 500 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c ret = PtlTriggeredCTSet(ompi_mtl_portals4.flowctl.trigger_ct_h, flowctl 502 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c ompi_mtl_portals4.flowctl.fanin_ct_h, flowctl 503 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c epoch * (ompi_mtl_portals4.flowctl.num_children + 1)); flowctl 515 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c ompi_mtl_portals4.flowctl.me, flowctl 521 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c ompi_mtl_portals4.flowctl.fanin_ct_h, flowctl 522 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c epoch * (ompi_mtl_portals4.flowctl.num_children + 1)); flowctl 534 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c ompi_mtl_portals4.flowctl.parent, flowctl 540 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c ompi_mtl_portals4.flowctl.fanin_ct_h, flowctl 541 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c epoch * (ompi_mtl_portals4.flowctl.num_children + 1)); flowctl 550 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c for (i = 0 ; i < ompi_mtl_portals4.flowctl.num_children ; ++i) { flowctl 555 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c ompi_mtl_portals4.flowctl.children[i], flowctl 561 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c ompi_mtl_portals4.flowctl.fanout_ct_h, flowctl 591 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c ompi_mtl_portals4.flowctl.flowctl_active = false; flowctl 602 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c (ompi_mtl_portals4.flowctl.tv.tv_sec * 1000000 + ompi_mtl_portals4.flowctl.tv.tv_usec)) flowctl 603 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c < 1000000 * ompi_mtl_portals4.flowctl.backoff_count) { flowctl 604 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c usleep(++ompi_mtl_portals4.flowctl.backoff_count); flowctl 606 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c ompi_mtl_portals4.flowctl.backoff_count = 0; flowctl 608 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c ompi_mtl_portals4.flowctl.tv = tv; flowctl 614 ompi/mca/mtl/portals4/mtl_portals4_flowctl.c ompi_mtl_portals4.flowctl.epoch_counter)); flowctl 56 ompi/mca/mtl/portals4/mtl_portals4_recv.c while (OPAL_UNLIKELY(OPAL_THREAD_ADD_FETCH32(&ompi_mtl_portals4.flowctl.send_slots, -1) < 0)) { flowctl 57 ompi/mca/mtl/portals4/mtl_portals4_recv.c OPAL_THREAD_ADD_FETCH32(&ompi_mtl_portals4.flowctl.send_slots, 1); flowctl 395 ompi/mca/mtl/portals4/mtl_portals4_recv.c OPAL_THREAD_ADD_FETCH32(&ompi_mtl_portals4.flowctl.send_slots, 1); flowctl 95 ompi/mca/mtl/portals4/mtl_portals4_send.c opal_list_append(&ompi_mtl_portals4.flowctl.pending_sends, flowctl 97 ompi/mca/mtl/portals4/mtl_portals4_send.c OPAL_THREAD_ADD_FETCH32(&ompi_mtl_portals4.flowctl.send_slots, 1); flowctl 177 ompi/mca/mtl/portals4/mtl_portals4_send.c OPAL_THREAD_ADD_FETCH32(&ompi_mtl_portals4.flowctl.send_slots, 1); flowctl 178 ompi/mca/mtl/portals4/mtl_portals4_send.c opal_free_list_return (&ompi_mtl_portals4.flowctl.pending_fl, flowctl 181 ompi/mca/mtl/portals4/mtl_portals4_send.c if (OPAL_UNLIKELY(0 != opal_list_get_size(&ompi_mtl_portals4.flowctl.pending_sends))) { flowctl 423 ompi/mca/mtl/portals4/mtl_portals4_send.c while ((!ompi_mtl_portals4.flowctl.flowctl_active) && flowctl 424 ompi/mca/mtl/portals4/mtl_portals4_send.c (0 != opal_list_get_size(&ompi_mtl_portals4.flowctl.pending_sends))) { flowctl 425 ompi/mca/mtl/portals4/mtl_portals4_send.c val = OPAL_THREAD_ADD_FETCH32(&ompi_mtl_portals4.flowctl.send_slots, -1); flowctl 427 ompi/mca/mtl/portals4/mtl_portals4_send.c OPAL_THREAD_ADD_FETCH32(&ompi_mtl_portals4.flowctl.send_slots, 1); flowctl 431 ompi/mca/mtl/portals4/mtl_portals4_send.c item = opal_list_remove_first(&ompi_mtl_portals4.flowctl.pending_sends); flowctl 433 ompi/mca/mtl/portals4/mtl_portals4_send.c OPAL_THREAD_ADD_FETCH32(&ompi_mtl_portals4.flowctl.send_slots, 1); flowctl 457 ompi/mca/mtl/portals4/mtl_portals4_send.c opal_list_prepend(&ompi_mtl_portals4.flowctl.pending_sends, flowctl 459 ompi/mca/mtl/portals4/mtl_portals4_send.c OPAL_THREAD_ADD_FETCH32(&ompi_mtl_portals4.flowctl.send_slots, 1); flowctl 508 ompi/mca/mtl/portals4/mtl_portals4_send.c item = opal_free_list_get (&ompi_mtl_portals4.flowctl.pending_fl); flowctl 523 ompi/mca/mtl/portals4/mtl_portals4_send.c if (OPAL_UNLIKELY(OPAL_THREAD_ADD_FETCH32(&ompi_mtl_portals4.flowctl.send_slots, -1) < 0)) { flowctl 524 ompi/mca/mtl/portals4/mtl_portals4_send.c OPAL_THREAD_ADD_FETCH32(&ompi_mtl_portals4.flowctl.send_slots, 1); flowctl 525 ompi/mca/mtl/portals4/mtl_portals4_send.c opal_list_append(&ompi_mtl_portals4.flowctl.pending_sends, flowctl 530 ompi/mca/mtl/portals4/mtl_portals4_send.c if (OPAL_UNLIKELY(0 != opal_list_get_size(&ompi_mtl_portals4.flowctl.pending_sends))) { flowctl 531 ompi/mca/mtl/portals4/mtl_portals4_send.c OPAL_THREAD_ADD_FETCH32(&ompi_mtl_portals4.flowctl.send_slots, 1); flowctl 532 ompi/mca/mtl/portals4/mtl_portals4_send.c opal_list_append(&ompi_mtl_portals4.flowctl.pending_sends, flowctl 538 ompi/mca/mtl/portals4/mtl_portals4_send.c if (OPAL_UNLIKELY(ompi_mtl_portals4.flowctl.flowctl_active)) { flowctl 539 ompi/mca/mtl/portals4/mtl_portals4_send.c OPAL_THREAD_ADD_FETCH32(&ompi_mtl_portals4.flowctl.send_slots, 1); flowctl 540 ompi/mca/mtl/portals4/mtl_portals4_send.c opal_list_append(&ompi_mtl_portals4.flowctl.pending_sends,