Defining topology instances and fields. More...
| Topics | |
| Launch maps | |
| Selecting topology colors to send to tasks. | |
| Classes | |
| struct | accessor< L, T, Priv > | 
| A data accessor.  More... | |
| struct | accessor< dense, T, P > | 
| Accessor for ordinary fields.  More... | |
| struct | accessor< raw, DATA_TYPE, PRIVILEGES > | 
| Accessor for potentially uninitialized memory.  More... | |
| struct | accessor< single, DATA_TYPE, PRIVILEGES > | 
| Accessor for a single value. This class is supported for GPU execution.  More... | |
| struct | accessor< sparse, T, P > | 
| Accessor for sparse fields.  More... | |
| struct | coloring_slot< class > | 
| A mpi_coloringobject, constructed on request.  More... | |
| struct | field< T, L > | 
| Helper type to define and access fields.  More... | |
| struct | field_reference< T, L, Topo, Space > | 
| Identifies a field on a particular topology instance.  More... | |
| struct | multi< A > | 
| A sequence of accessors obtained from a launch::mapping.  More... | |
| struct | multi_reference< T, L, Topo, S > | 
| Identifies a field on a launch::mapping.  More... | |
| struct | mutator< layout, class, Privileges > | 
| A specialized accessor for changing the extent of dynamic layouts.  More... | |
| struct | mutator< particle, T, P > | 
| Mutator for particle fields.  More... | |
| struct | mutator< ragged, T, P > | 
| Mutator for ragged fields.  More... | |
| struct | mutator< sparse, T, P > | 
| Mutator for sparse fields.  More... | |
| struct | particle_accessor< T, P, M > | 
| Accessor for particle fields.  More... | |
| struct | ragged_accessor< T, P, OP > | 
| Accessor for ragged fields.  More... | |
| struct | reduction_accessor< R, T > | 
| Accessor for computing reductions.  More... | |
| struct | topology< Topo > | 
| A topology instance.  More... | |
| struct | topology_accessor< class, Privileges > | 
| Topology accessor type.  More... | |
| struct | topology_slot< Topo > | 
| A movable slot that holds a topology, constructed upon request.  More... | |
| Enumerations | |
| enum | layout : size_t { raw , single , dense , ragged , sparse , particle } | 
| A type of logical data structure.  More... | |
| enum | privilege : Privileges { na , ro , wo , rw } | 
| Access privileges for data passed to FleCSI tasks.  More... | |
| Variables | |
| topo::global::slot | global_topology | 
| Default global topology instance with size 1. | |
| topo::index::slot | process_topology | 
| Topology instance with one color per process. | |
Defining topology instances and fields.
Contents are in flecsi::data unless otherwise specified. 
The inclusion of flecsi/topology.hh by this header is deprecated.
| enum layout : size_t | 
A type of logical data structure.
The interface for each is provided by an accessor. 
| enum privilege : Privileges | 
Access privileges for data passed to FleCSI tasks.
Each field must be initialized with discarding privileges: all wo, except that ghosts may instead be na. Any use of wo produces a valid but unspecified state for the selected objects (after any needed ghost copies of them are made).
When field elements are created, they are default-initialized. Using discarding privileges may create new field elements, concurrently destroying any that already exist. There is a deprecated guarantee that this always takes place.
Ghost data is updated only when read access to it is requested. Writes to shared data are never propagated to ghost data for which the same task has write access, as it is assumed to have updated them.
Appears directly in flecsi. 
| Enumerator | |
|---|---|
| na | no access: defer consistency update | 
| ro | read-only | 
| wo | write-only: consistency updates discarded | 
| rw | read-write | 
| topo::global::slot global_topology | 
Default global topology instance with size 1.
Appears directly in flecsi. 
| topo::index::slot process_topology | 
Topology instance with one color per process.
Appears directly in flecsi.