|
core 1.5.0
Shared MPI block decomposition, asynchronous ghost-layer exchange, SDF geometry, load balancing (header-only C++20)
|
Base of everything on the binding side that owns Kokkos Views on Python's behalf. More...
#include <kokkos_teardown.hpp>
Public Member Functions | |
| Releasable () noexcept | |
| Releasable (const Releasable &) noexcept | |
| Releasable (Releasable &&) noexcept | |
| Releasable & | operator= (const Releasable &) noexcept |
| Releasable & | operator= (Releasable &&) noexcept |
| virtual | ~Releasable () |
| virtual void | release () noexcept=0 |
Static Public Member Functions | |
| static std::set< Releasable * > & | registry () |
| This module's live registry. | |
Base of everything on the binding side that owns Kokkos Views on Python's behalf.
Registration is automatic (constructor/destructor); release() must leave the object safe to destroy after Kokkos::finalize, i.e. holding no View that still has an allocation.
Definition at line 56 of file kokkos_teardown.hpp.
|
inlinenoexcept |
Definition at line 58 of file kokkos_teardown.hpp.
References registry().
|
inlinenoexcept |
Definition at line 59 of file kokkos_teardown.hpp.
References registry().
|
inlinenoexcept |
Definition at line 60 of file kokkos_teardown.hpp.
References registry().
|
inlinevirtual |
Definition at line 63 of file kokkos_teardown.hpp.
References registry().
|
inlinenoexcept |
Definition at line 61 of file kokkos_teardown.hpp.
|
inlinenoexcept |
Definition at line 62 of file kokkos_teardown.hpp.
Implemented in peclet::core::python::ViewCapsule< V >.
|
inlinestatic |
This module's live registry.
Heap-allocated and never destroyed, so the capsule deleters Python runs during its final module teardown can still unregister safely.
Definition at line 68 of file kokkos_teardown.hpp.
Referenced by Releasable(), Releasable(), Releasable(), peclet::core::python::release_all(), and ~Releasable().