include/pops/runtime/module_capabilities.hpp Source File¶
|
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
|
module_capabilities.hpp
Go to the documentation of this file.
87inline ModuleCapabilities module_capabilities(CapabilityTarget target = CapabilityTarget::kModule) {
constexpr bool kHasGpuBackend
True iff this translation unit is compiled for a real GPU device backend.
Definition module_capabilities.hpp:60
Definition amr_hierarchy.hpp:29
CapabilityTarget
The lowering route whose static capabilities are queried.
Definition module_capabilities.hpp:38
@ kModule
@ kProduction
constexpr int kAbiVersion
Discrete, monotonic ABI revision of the module capability contract.
Definition module_capabilities.hpp:32
ModuleCapabilities module_capabilities(CapabilityTarget target=CapabilityTarget::kModule)
The module's STATIC capability facts for a given lowering route target (Spec 5 sec....
Definition module_capabilities.hpp:87
The STATIC transport capabilities the built _pops module provides (Spec 5 sec.13.12).
Definition module_capabilities.hpp:43
bool supports_uniform
single-level uniform grid (always available).
Definition module_capabilities.hpp:45
bool supports_gpu
real GPU device backend (Kokkos AND a CUDA/HIP token).
Definition module_capabilities.hpp:48
bool supports_amr
adaptive mesh refinement runtime (AmrSystem; always built in).
Definition module_capabilities.hpp:46
bool supports_partial_imex_mask
partial IMEX mask – FALSE: no C++ path backs it (do not lie).
Definition module_capabilities.hpp:51
bool supports_stride
the route carries a cell stride (production: yes; aot: no).
Definition module_capabilities.hpp:49
bool supports_named_fields
named aux-field transport (named_aux, aux_field; always built).
Definition module_capabilities.hpp:50
int abi_version
pops::kAbiVersion (this build's capability-contract revision).
Definition module_capabilities.hpp:44
bool supports_mpi
real MPI transport (POPS_HAS_MPI); false on a serial module.
Definition module_capabilities.hpp:47
Generated by