|
core 0.5.0
Shared MPI block decomposition + asynchronous ghost-layer exchange (header-only C++20)
|
Device-resident value refresh over a finalized LeafHalo: pack the owner's local values as a Kokkos kernel, move only the compact buffers across MPI (host-staged by default, GPU-aware via PECLET_CORE_GPU_AWARE_MPI — the GridHalo/DistributedGatherHalo pattern), scatter into the ghost tail of the extended device field. More...
#include <leaf_halo.hpp>
Public Member Functions | |
| template<int Dim, unsigned Bits> | |
| void | init (const LeafHalo< Dim, Bits > &h) |
| Index | numGhosts () const |
| void | exchange (View< double > x, int tag=45) const |
| Refresh x[nLocal, nLocal+nGhost) (x is the extended device field, size >= extendedSize()). | |
| void | exchange3 (View< double > x0, View< double > x1, View< double > x2, int tag=46) const |
| Batched 3-component refresh (one message round for u0,u1,u2 — stride-3 packing). | |
Device-resident value refresh over a finalized LeafHalo: pack the owner's local values as a Kokkos kernel, move only the compact buffers across MPI (host-staged by default, GPU-aware via PECLET_CORE_GPU_AWARE_MPI — the GridHalo/DistributedGatherHalo pattern), scatter into the ghost tail of the extended device field.
exchange3 batches three components per message round.
Definition at line 307 of file leaf_halo.hpp.
Definition at line 310 of file leaf_halo.hpp.
References peclet::core::toDevice(), and peclet::core::amr::transferFieldGradients().
Referenced by peclet::core::amr::AmrFlow< Bits >::prepareDistributed().
|
inline |
Definition at line 337 of file leaf_halo.hpp.
Refresh x[nLocal, nLocal+nGhost) (x is the extended device field, size >= extendedSize()).
Definition at line 340 of file leaf_halo.hpp.
References peclet::core::amr::transferFieldGradients().
Referenced by peclet::core::amr::AmrFlow< Bits >::prepareDistributed(), and peclet::core::amr::AmrFlow< Bits >::syncScalar().
|
inline |
Batched 3-component refresh (one message round for u0,u1,u2 — stride-3 packing).
Definition at line 360 of file leaf_halo.hpp.
References peclet::core::amr::transferFieldGradients().
Referenced by peclet::core::amr::AmrFlow< Bits >::syncVel().