#include <barrier_impl.h>
|
| | BarrierImpl (void) |
| |
| | BarrierImpl (BarrierCommunicator *_barrier_comm, int _broadcast_radix=4) |
| |
| | ~BarrierImpl (void) |
| |
| void | init (ID _me, unsigned _init_owner) |
| |
| Barrier | current_barrier (Barrier::timestamp_t timestamp=0) const |
| |
| Barrier | make_barrier (gen_t gen, Barrier::timestamp_t timestamp=0) const |
| |
| virtual bool | has_triggered (gen_t needed_gen, bool &poisoned) |
| |
| virtual void | subscribe (gen_t subscribe_gen) |
| |
| virtual void | external_wait (gen_t needed_gen, bool &poisoned) |
| |
| virtual bool | external_timedwait (gen_t needed_gen, bool &poisoned, long long max_ns) |
| |
| virtual bool | add_waiter (gen_t needed_gen, EventWaiter *waiter) |
| |
| virtual bool | remove_waiter (gen_t needed_gen, EventWaiter *waiter) |
| |
| void | adjust_arrival (gen_t barrier_gen, int delta, Barrier::timestamp_t timestamp, Event wait_on, NodeID sender, bool forwarded, const void *reduce_value, size_t reduce_value_size, TimeLimit work_until) |
| |
| void | handle_remote_subscription (NodeID subscriber, EventImpl::gen_t subscribe_gen, bool forwarded, const void *data, size_t datalen) |
| |
| void | handle_remote_trigger (NodeID sender, ID::IDType barrier_id, EventImpl::gen_t trigger_gen, EventImpl::gen_t previous_gen, EventImpl::gen_t first_gen, ReductionOpID redop_id, NodeID migration_target, int broadcast_index, unsigned base_count, const void *data, size_t datalen, TimeLimit work_until) |
| |
| bool | get_result (gen_t result_gen, void *value, size_t value_size) |
| |
| | EventImpl (void) |
| |
| virtual | ~EventImpl (void) |
| |
| Event | make_event (gen_t gen) const |
| |
|
| void | broadcast_trigger (const std::vector< RemoteNotification > &ordered_notifications, const std::vector< NodeID > &broadcast_targets, EventImpl::gen_t oldest_previous, EventImpl::gen_t broadcast_previous, EventImpl::gen_t first_generation, NodeID migration_target, unsigned base_arrival_count, ReductionOpID redop_id, const void *data, size_t datalen, bool include_notifications=true) |
| |
◆ BarrierImpl() [1/2]
| Realm::BarrierImpl::BarrierImpl |
( |
void |
| ) |
|
◆ BarrierImpl() [2/2]
| Realm::BarrierImpl::BarrierImpl |
( |
BarrierCommunicator * |
_barrier_comm, |
|
|
int |
_broadcast_radix = 4 |
|
) |
| |
◆ ~BarrierImpl()
| Realm::BarrierImpl::~BarrierImpl |
( |
void |
| ) |
|
◆ add_waiter()
| virtual bool Realm::BarrierImpl::add_waiter |
( |
gen_t |
needed_gen, |
|
|
EventWaiter * |
waiter |
|
) |
| |
|
virtual |
◆ adjust_arrival()
| void Realm::BarrierImpl::adjust_arrival |
( |
gen_t |
barrier_gen, |
|
|
int |
delta, |
|
|
Barrier::timestamp_t |
timestamp, |
|
|
Event |
wait_on, |
|
|
NodeID |
sender, |
|
|
bool |
forwarded, |
|
|
const void * |
reduce_value, |
|
|
size_t |
reduce_value_size, |
|
|
TimeLimit |
work_until |
|
) |
| |
◆ broadcast_trigger()
| void Realm::BarrierImpl::broadcast_trigger |
( |
const std::vector< RemoteNotification > & |
ordered_notifications, |
|
|
const std::vector< NodeID > & |
broadcast_targets, |
|
|
EventImpl::gen_t |
oldest_previous, |
|
|
EventImpl::gen_t |
broadcast_previous, |
|
|
EventImpl::gen_t |
first_generation, |
|
|
NodeID |
migration_target, |
|
|
unsigned |
base_arrival_count, |
|
|
ReductionOpID |
redop_id, |
|
|
const void * |
data, |
|
|
size_t |
datalen, |
|
|
bool |
include_notifications = true |
|
) |
| |
|
protected |
◆ create_barrier()
| static BarrierImpl * Realm::BarrierImpl::create_barrier |
( |
unsigned |
expected_arrivals, |
|
|
ReductionOpID |
redopid, |
|
|
const void * |
initial_value = 0, |
|
|
size_t |
initial_value_size = 0 |
|
) |
| |
|
static |
◆ current_barrier()
◆ external_timedwait()
| virtual bool Realm::BarrierImpl::external_timedwait |
( |
gen_t |
needed_gen, |
|
|
bool & |
poisoned, |
|
|
long long |
max_ns |
|
) |
| |
|
virtual |
◆ external_wait()
| virtual void Realm::BarrierImpl::external_wait |
( |
gen_t |
needed_gen, |
|
|
bool & |
poisoned |
|
) |
| |
|
virtual |
◆ get_result()
| bool Realm::BarrierImpl::get_result |
( |
gen_t |
result_gen, |
|
|
void * |
value, |
|
|
size_t |
value_size |
|
) |
| |
◆ handle_remote_subscription()
| void Realm::BarrierImpl::handle_remote_subscription |
( |
NodeID |
subscriber, |
|
|
EventImpl::gen_t |
subscribe_gen, |
|
|
bool |
forwarded, |
|
|
const void * |
data, |
|
|
size_t |
datalen |
|
) |
| |
◆ handle_remote_trigger()
| void Realm::BarrierImpl::handle_remote_trigger |
( |
NodeID |
sender, |
|
|
ID::IDType |
barrier_id, |
|
|
EventImpl::gen_t |
trigger_gen, |
|
|
EventImpl::gen_t |
previous_gen, |
|
|
EventImpl::gen_t |
first_gen, |
|
|
ReductionOpID |
redop_id, |
|
|
NodeID |
migration_target, |
|
|
int |
broadcast_index, |
|
|
unsigned |
base_count, |
|
|
const void * |
data, |
|
|
size_t |
datalen, |
|
|
TimeLimit |
work_until |
|
) |
| |
◆ has_triggered()
| virtual bool Realm::BarrierImpl::has_triggered |
( |
gen_t |
needed_gen, |
|
|
bool & |
poisoned |
|
) |
| |
|
virtual |
◆ init()
| void Realm::BarrierImpl::init |
( |
ID |
_me, |
|
|
unsigned |
_init_owner |
|
) |
| |
◆ make_barrier()
◆ make_id()
◆ remove_waiter()
| virtual bool Realm::BarrierImpl::remove_waiter |
( |
gen_t |
needed_gen, |
|
|
EventWaiter * |
waiter |
|
) |
| |
|
virtual |
◆ subscribe()
| virtual void Realm::BarrierImpl::subscribe |
( |
gen_t |
subscribe_gen | ) |
|
|
virtual |
◆ barrier_adjustment_timestamp
◆ barrier_comm
◆ BARRIER_TIMESTAMP_NODEID_SHIFT
| const int Realm::BarrierImpl::BARRIER_TIMESTAMP_NODEID_SHIFT = 48 |
|
static |
◆ base_arrival_count
| unsigned Realm::BarrierImpl::base_arrival_count = 0 |
◆ broadcast_radix
| int Realm::BarrierImpl::broadcast_radix |
◆ external_waiter_condvar
◆ external_waiter_mutex
◆ final_values
| std::vector<char> Realm::BarrierImpl::final_values |
◆ first_generation
| gen_t Realm::BarrierImpl::first_generation = 0 |
◆ gen_subscribed
◆ generation
◆ generations
◆ has_external_waiters
| bool Realm::BarrierImpl::has_external_waiters = false |
◆ held_triggers
| std::map<gen_t, gen_t> Realm::BarrierImpl::held_triggers |
◆ ID_TYPE
◆ initial_value
| std::unique_ptr<char[]> Realm::BarrierImpl::initial_value {} |
◆ mutex
| Mutex Realm::BarrierImpl::mutex |
◆ needs_ordering
| bool Realm::BarrierImpl::needs_ordering |
◆ next_free
◆ ordered_buffer
| std::vector<std::pair<int, std::vector<RemoteNotification> > > Realm::BarrierImpl::ordered_buffer |
◆ redop
◆ redop_id
◆ remote_subscribe_gens
| std::map<unsigned, gen_t> Realm::BarrierImpl::remote_subscribe_gens |
◆ remote_trigger_gens
| std::map<unsigned, gen_t> Realm::BarrierImpl::remote_trigger_gens |
◆ value_capacity
| unsigned Realm::BarrierImpl::value_capacity = 0 |
The documentation for this class was generated from the following file: