• https://pytorch.org/executorch/stable/compiler-delegate-and-partitioner.html

  • A delegate backend implementation is composed of:

    • An ahead-of-time preprocessing interface
      • program preprocessing (e.g. ahead of time compilation, transformation, optimization…).
    • A runtime initialization and execution interface
      • Program initialization (e.g. runtime compilation).
      • Program execution.
      • (optional) Program destroy (e.g. release backend owned resource)

Preprocessing

  • Before any serialization, we apply passes on the subgraphs to prepare the graph.
    • These passes are essentially graph transformations that help improve the performance of the delegate.
    • Examples: Passes or transformation