|
docc 0.8.3 (0d44999b)
C++ API Reference
|
Classes | |
| class | Block |
| A control flow node representing a basic block with dataflow computations. More... | |
| class | AssignmentBlock |
| class | ControlFlowNode |
| Base class for all structured control flow nodes in a StructuredSDFG. More... | |
| class | For |
| Represents a traditional for-loop with sequential execution. More... | |
| class | IfElse |
| Represents a conditional if-else control flow node with multiple cases. More... | |
| class | Map |
| Represents a parallel map loop with configurable scheduling. More... | |
| struct | ReductionInfo |
| A single reduction carried by a Reduce loop. More... | |
| class | Reduce |
| Represents a loop with an associative/commutative reduction carried dependency. More... | |
| class | Return |
| Represents a return statement that exits the function with a value. More... | |
| class | Sequence |
| A sequential container of control flow nodes. More... | |
| class | ScheduleType |
| Represents a schedule type for Map nodes. More... | |
| class | ScheduleType_Sequential |
| Sequential schedule type for Map nodes. More... | |
| class | ScheduleType_Unroll |
| Unroll annotation carried as a generic property on any ScheduleType. More... | |
| class | ScheduleType_NoFusion |
| No-fusion annotation carried as a generic property on any ScheduleType. More... | |
| class | ScheduleType_ZeroInit |
| Zero-initialization annotation carried as a generic property on any ScheduleType. More... | |
| class | ScheduleType_NestAnnotations |
| Annotations describing a whole loop nest rather than a single loop's execution strategy. More... | |
| class | StructuredLoop |
| Base class for structured loop constructs. More... | |
| class | While |
| Represents a while-loop with condition-controlled iteration. More... | |
| class | Break |
| Represents a break statement that exits the innermost loop. More... | |
| class | Continue |
| Represents a continue statement that skips to the next loop iteration. More... | |
Enumerations | |
| enum class | ReductionOperation { Add , Mul , Min , Max } |
| Associative and commutative reduction operators. More... | |
| enum class | RescaleBase { E , Two } |
| Exponential base of a rescaled reduction (see ReductionInfo::rescale). More... | |
| enum class | ScheduleTypeCategory { Offloader , Parallelizer , Vectorizer , None } |
| Categories of schedule types for Map nodes Defines the high-level classification of scheduling strategies. More... | |
Functions | |
| std::string | reduction_operation_to_string (ReductionOperation op) |
| Serialize a reduction operator to its canonical string identifier. | |
| ReductionOperation | reduction_operation_from_string (const std::string &value) |
| Parse a reduction operator from its canonical string identifier. | |
| std::string | rescale_base_to_string (RescaleBase base) |
| RescaleBase | rescale_base_from_string (const std::string &value) |
|
strong |
Associative and commutative reduction operators.
A Reduce loop combines the values produced across its iterations into an accumulator using one of these operators. Only operators that are both associative and commutative are representable here, because that is exactly the property that makes the loop-carried dependency safe to parallelize (the partial results of disjoint iteration subsets may be combined in any order).
| Enumerator | |
|---|---|
| Add | |
| Mul | |
| Min | |
| Max | |
|
strong |
Exponential base of a rescaled reduction (see ReductionInfo::rescale).
| Enumerator | |
|---|---|
| E | |
| Two | |
|
strong |
Categories of schedule types for Map nodes Defines the high-level classification of scheduling strategies.
| Enumerator | |
|---|---|
| Offloader | |
| Parallelizer | |
| Vectorizer | |
| None | |
| ReductionOperation sdfg::structured_control_flow::reduction_operation_from_string | ( | const std::string & | value | ) |
Parse a reduction operator from its canonical string identifier.
| InvalidSDFGException | if the string does not name a known operator |
| std::string sdfg::structured_control_flow::reduction_operation_to_string | ( | ReductionOperation | op | ) |
Serialize a reduction operator to its canonical string identifier.
| RescaleBase sdfg::structured_control_flow::rescale_base_from_string | ( | const std::string & | value | ) |
| InvalidSDFGException | if the string does not name a known base |
| std::string sdfg::structured_control_flow::rescale_base_to_string | ( | RescaleBase | base | ) |