|
docc 0.8.3 (0d44999b)
C++ API Reference
|
Classes | |
| struct | EinsumIndexContribution |
| A single einsum dimension's contribution to one operand's access subset. More... | |
| struct | EinsumIndexing |
| How the consumed einsum dimensions map onto one operand's access subset. More... | |
| struct | OperandContribution |
| A single consumed dimension's contribution to one operand, found during promotion. More... | |
| struct | PromotionCheck |
| Result of checking whether a loop can be folded into a cluster. More... | |
| class | EinsumEdge |
| class | EinsumEdgeOriginal |
| class | EinsumEdgeVirtual |
| class | EinsumCluster |
| Non-destructive counterpart of an EinsumNode. More... | |
| class | EinsumDetection |
| Non-destructive detection of einsum clusters in a StructuredSDFG. More... | |
| struct | EinsumDimension |
| class | EinsumNode |
| class | EinsumSerializer |
| class | EinsumReplacementContext |
| ExpandContext for replacing an EinsumCluster with a new implementation. More... | |
| class | EinsumReplacer |
| Interface for replacing an EinsumCluster with a different implementation. More... | |
| class | EinsumDetectionPass |
| class | EinsumConversion |
| class | EinsumLower |
| class | EinsumExpansion |
| Visitor that expands the EinsumNode with the legacy expand() method. More... | |
| class | Einsum2MatMul |
| Proof-of-concept replacer that turns a matmul-shaped EinsumCluster into a MatMulNode. More... | |
| class | Einsum2Dot |
| class | Einsum2Gemm |
| class | EinsumExtend |
| class | EinsumLift |
| class | EinsumPromotion |
Typedefs | |
| typedef passes::LibNodeExpander::ExpandOutcome | ReplaceOutcome |
| typedef passes::VisitorPass< EinsumConversion > | EinsumConversionPass |
| typedef passes::VisitorPass< EinsumLower > | EinsumLowerPass |
| typedef passes::VisitorPass< EinsumExpansion > | EinsumExpansionPass |
| Pass wrapper for the EinsumExpansion visitor. | |
Functions | |
| void | register_einsum_plugin () |
| data_flow::LibraryNodeCode | LibraryNodeType_Einsum ("Einsum") |
| ReplaceOutcome | replace_einsum_cluster (builder::StructuredSDFGBuilder &builder, const EinsumCluster &cluster, const EinsumReplacer &replacer) |
| Drive a single replacement. | |
Pass wrapper for the EinsumExpansion visitor.
|
inline |
|
inline |
| ReplaceOutcome sdfg::einsum::replace_einsum_cluster | ( | builder::StructuredSDFGBuilder & | builder, |
| const EinsumCluster & | cluster, | ||
| const EinsumReplacer & | replacer ) |
Drive a single replacement.
Builds an EinsumReplacementContext, runs the replacer and, on success, removes the original computation. Returns the replacer's outcome.