▼Data Model | Defining topology instances and fields |
Legion Data | Owning wrappers for Legion objects |
Launch maps | Selecting topology colors to send to tasks |
MPI Data | Direct data storage |
Topology implementation | These types are movable but may not be copyable |
▼Execution Model | Launching tasks and kernels |
Reduction Operations | Types to use with reduce , reduceall , and reduction_accessor |
Kernels | Local concurrent operations |
Legion Execution | Potentially remote task execution |
MPI Execution | Direct task execution |
Logging | Configurable, parallel logging |
▼I/O | Checkpointing |
Legion I/O | |
▼Runtime Model | Environmental information and tools for organizing applications |
Control Model | Types for defining, extending, and executing control-flow graphs |
Legion Runtime | State for and control of the Legion runtime |
MPI Runtime | Global state |
▼Topologies | Generic topology categories and tools for specializing them |
Predefined specializations | Specializations for topologies so simple that no others are needed |
Multi-dimensional Array | Configurable multi-dimensional array topology |
N-dimensional Tree | Binary, Quad and Oct Tree topology |
Particle Set | Supports non-interacting particle methods |
Unstructured Mesh | Configurable unstructured mesh interface |
▼Utilities | Non-domain-specific infrastructure |
Profiling | Markers for categorizing performance measurements |
Filling Curves | Space-filling curve, key generators |
KDTree | KDTree based search utilities |
Point | Spatial representation of a point based on dimensioned_array |
Graphviz Support | Wrapper for libcgraph |
MPI | These require MPI tasks, not the MPI backend |
Serialization | Serialization without default constructibility |
Unit Testing | Unit test framework much like Google Test but with task support |
Ranges | Range and iterator tools, mostly backported from the standard library |
Configuration | FleCSI Configuration |
GPU utilities | Containers with fixed size to use on GPUs |