MCPcopy Create free account
hub / github.com/pytorch/executorch / __init__

Method __init__

exir/program/_program.py:1544–1581  ·  view source on GitHub ↗

Should not be called directly by users. User should use :func:'to_edge' instead. Constructs an EdgeProgramManager from an existing set of exported programs in edge dialect.

(
        self,
        edge_programs: Union[ExportedProgram, Dict[str, ExportedProgram]],
        constant_methods: Optional[Dict[str, Any]] = None,
        compile_config: Optional[EdgeCompileConfig] = None,
        core_aten_ops_exception_list: Optional[List[torch._ops.OpOverload]] = None,
        preserve_ops: Optional[List[torch._ops.OpOverload]] = None,
    )

Source from the content-addressed store, hash-verified

1542 """
1543
1544 def __init__(
1545 self,
1546 edge_programs: Union[ExportedProgram, Dict[str, ExportedProgram]],
1547 constant_methods: Optional[Dict[str, Any]] = None,
1548 compile_config: Optional[EdgeCompileConfig] = None,
1549 core_aten_ops_exception_list: Optional[List[torch._ops.OpOverload]] = None,
1550 preserve_ops: Optional[List[torch._ops.OpOverload]] = None,
1551 ):
1552 """
1553 Should not be called directly by users. User should use :func:'to_edge' instead.
1554
1555 Constructs an EdgeProgramManager from an existing set of exported programs in edge dialect.
1556 """
1557 self.compile_config = compile_config or EdgeCompileConfig()
1558 if not isinstance(edge_programs, dict):
1559 edge_programs = {"forward": edge_programs}
1560
1561 for name, program in edge_programs.items():
1562 try:
1563 EXIREdgeDialectVerifier(
1564 edge_compile_config=self.compile_config,
1565 core_aten_ops_exception_list=core_aten_ops_exception_list,
1566 preserve_ops=preserve_ops,
1567 )(program.graph_module)
1568 except ExportError as e:
1569 logging.info(f"Input program {name} is not in aten dialect.")
1570 raise e
1571
1572 self._edge_programs: Dict[str, ExportedProgram] = edge_programs
1573 self._config_methods = constant_methods
1574
1575 self._named_data_store = NamedDataStore()
1576 for _, program in self._edge_programs.items():
1577 collect_named_data_store_from_exported_program(
1578 program, self._named_data_store
1579 )
1580
1581 self._etrecord = None
1582
1583 @property
1584 def methods(self) -> Set[str]:

Callers

nothing calls this directly

Calls 6

EdgeCompileConfigClass · 0.90
EXIREdgeDialectVerifierFunction · 0.90
NamedDataStoreClass · 0.90
itemsMethod · 0.80
infoMethod · 0.80

Tested by

no test coverage detected