HaloExchange Struct ReferenceΒΆ

adc_cpp: pops::HaloExchange Struct Reference
adc_cpp 0.3.0
Model-free C++23 core for coupled hyperbolic-elliptic systems on adaptive (AMR) meshes, with MPI and GPU (Kokkos) backends
pops::HaloExchange Struct Reference

Opaque state of an in-flight halo exchange, returned by fill_boundary_begin and consumed by fill_boundary_end. More...

#include <fill_boundary.hpp>

+ Collaboration diagram for pops::HaloExchange:

Public Attributes

std::shared_ptr< const HaloSchedulesched
 

Detailed Description

Opaque state of an in-flight halo exchange, returned by fill_boundary_begin and consumed by fill_boundary_end.

OWNS the send/receive buffers and the MPI_Request: they stay alive (and at a stable address after move) until fill_boundary_end is called. Empty in single-rank. Holds a shared handle to the cached schedule (ADC-260) so fill_boundary_end unpacks from the SAME recv job list begin posted; the handle keeps the plan alive even if a later fill_boundary on the same MultiFab appends another schedule.

Member Data Documentation

◆ sched

std::shared_ptr<const HaloSchedule> pops::HaloExchange::sched

The documentation for this struct was generated from the following file: