Class AAHD_AngleSet

Inheritance Relationships

Base Type

Class Documentation

class AAHD_AngleSet : public opensn::AngleSet

AAHD angle set.

Public Functions

AAHD_AngleSet(size_t id, const LBSGroupset &groupset, const SPDS &spds, std::shared_ptr<FLUDS> &fluds, std::vector<size_t> &angle_indices, std::map<uint64_t, std::shared_ptr<SweepBoundary>> &boundaries, int maximum_message_size, const MPICommunicatorSet &in_comm_set)
inline crb::Stream &GetStream()
inline std::uint32_t *GetDeviceAngleIndices()
virtual void InitializeDelayedUpstreamData() override

Initializes delayed upstream data.

This method gets called when a sweep scheduler is constructed.

inline virtual int GetMaxBufferMessages() const override

Returns the maximum buffer size from the sweepbuffer.

inline virtual void SetMaxBufferMessages(int count) override

Sets the maximum buffer size for the sweepbuffer.

void PrepostReceives()
bool IsReady()
void WaitForDownstreamAndDelayed()
virtual AngleSetStatus AngleSetAdvance(SweepChunk &sweep_chunk, AngleSetStatus permission) override

This function advances the work stages of an angleset.

inline virtual AngleSetStatus FlushSendBuffers() override
inline virtual void ResetSweepBuffers() override

Resets the sweep buffer.

inline virtual bool ReceiveDelayedData() override

Instructs the sweep buffer to receive delayed data.

virtual void SyncDeviceAngleIndices() override

Update the angle index data on the device to match the host.

inline void AddBoundaryOffset(std::uint64_t offset)
void CopyBoundaryOffsetToDevice()
inline std::uint64_t *GetDeviceBoudnaryOffset()

Public Static Attributes

static std::mutex m

Protected Attributes

crb::Stream stream_ = crb::Stream::get_null_stream()

Associated CUDA stream.

AAHD_ASynchronousCommunicator async_comm_

Asynchronous communicator.

crb::DeviceMemory<std::uint32_t> device_angle_indices_

Angle indices on GPU.

std::vector<std::uint64_t> host_boundary_offsets_

Vector of offsets into the boundary bank.

crb::DeviceMemory<std::uint64_t> device_boundary_offsets_

Boundary offset on GPU.