Class AAHD_ASynchronousCommunicator

Inheritance Relationships

Base Type

Class Documentation

class AAHD_ASynchronousCommunicator : public opensn::AsynchronousCommunicator

Interprocess communicator for AAH sweep on GPU devices.

Public Functions

AAHD_ASynchronousCommunicator(FLUDS &fluds, std::size_t groupset_id, std::size_t angle_set_id, unsigned int num_groups, std::size_t num_angles, int max_mpi_message_size, const SweepCommunicator &sweep_communicator)
void PrepostReceiveUpstreamPsi()

Pre-post receiving upstream dependencies have been met.

bool TestReceiveUpstreamPsi()
void WaitForUpstreamPsi()

Block until all upstream messages have been received.

void PrepostReceiveDelayedData()

Pre-post receive delayed data from successor locations.

void WaitForDelayedIncomingPsi()

Wait until all delayed incoming messages have been received.

void SendDownstreamPsi()

Send non-local outgoing psi.

void WaitForDownstreamPsi()

Wait until all downstream messages have been sent.

inline int GetMaxNumMessages() const
inline void SetMaxNumMessages(int count)

Protected Functions

void BuildMessageStructure()

Build message structure.

Message structure for tracking incoming, delayed incoming and outgoing non-local fluxes.