目录

导出到 ExecuTorch API 参考

exir 的to_edge程序constant_methods=compile_config=[来源]

从 ATen dialect.在构建时,这些程序将转换为 edge dialect。

参数
  • programs – 可以是单个 ExportedProgram 或将函数名称映射到其相应 ExportedPrograms 的字典。如果只提供了一个 ExportedProgram,则将为其分配名称 “forward”。

  • constant_methods – 一个可选的方法名称字典,其中包含该方法在 Eager 模式下返回的常量值。通常用于存储 Edge 模型的配置信息。

  • compile_config – 一个可选参数,用于更好地控制转换为 edge dialect 过程。

返回

EdgeProgramManager

exir。EdgeProgramManageredge_programsconstant_methods=[来源]

Edge 方言中的一个或多个 ExportedPrograms 的包。旨在简化 降低到 ExecuTorch。

允许在导出的程序集合中轻松应用转换 包括子图的委派。

管理 ATen -> Edge -> ExecuTorch 的下降链中的第二个链接。

属性 config_methods

返回此 EdgeProgramManager 中的配置方法集。

exported_programmethod_name='forward'[来源]

返回由 'method_name' 指定的 ExportedProgram。

属性方法

返回此 EdgeProgramManager 中的方法集。

to_backend分区程序[来源]

返回一个语义上等价的程序,该程序与作为输入的程序相同, 但目标 EdgeProgramManager 中每个程序的部分 for delegation (由分区程序确定)。

参数

partitioner — 分区程序 –

分区器可以是 Partitioner 子类,也可以是 字典 Map 方法名称到 Partitioner 子类。如果它是一个 Partitioner 子类,则给定 EdgeProgramManager 中的所有程序 将使用给定的 partitioner 降低。如果它是一个 dictionary 中,只有字典中指定的方法名称才会是 使用给定的 partitioner 降低。

Partitioner 子类负责标记 委托的 input 程序。有效的分区程序必须具有 partition_tags:Dict[str, DelegationSpec],其中每个键都是一个标签 name 和具有相同 tag 的节点将被融合为 one 子图, delegated to backend 中指定的 delegate spec.

返回

调用 EdgeProgramManager 的副本,其中包含 指定的子图降低。

返回类型

EdgeProgramManager

to_executorchconfig=None[来源]

将程序转换为 ExecuTorch 后端。

参数

config – 一个可选参数,用于更好地控制 到 ExecuTorch 后端的转换。

返回

表示 EdgeProgramManager 状态的管理器 在它被转换为 ExecuTorch 后端之后。

返回类型

ExecutorchProgramManager

transformpasses[来源]

根据提供的通道转换程序。

参数

passes – 这些通行证可以是通行证列表,也可以是 字典 将方法名称映射到传递列表。如果是 只是一个传递列表,给定 EdgeProgramManager 中的所有方法 将使用提供的通道进行转换。如果它是一个 dictionary 中,只有字典中指定的方法名称才会是 transformed。

返回

调用 EdgeProgramManager 的副本,其中包含 应用转换。

返回类型

EdgeProgramManager

exir。ExecutorchProgramManagerexecution_programsconfig_methods=backend_config=[来源]

执行方言中的一个或多个 :class:'ExportedPrograms' 的包。旨在简化 降低到 ExecuTorch。

当 ExecutorchProgramManager 被构造时,ExportedPrograms in execution dialect 用于形成 executorch 二进制文件(在称为 emission的过程中),然后序列化 添加到缓冲区。

管理 ATen -> Edge -> ExecuTorch 的下降链中的最后一个环节。

属性缓冲区

返回包含序列化 ExecuTorch 二进制文件的缓冲区。

属性 config_methods

返回此 ExecutorchProgramManager 中的配置方法集。

dump_executorch_programverbose=False[来源]

以人类可读的格式打印 ExecuTorch 二进制文件。

参数

verbosebool) – 如果为 False,则以压缩格式打印二进制文件。 如果为 True,则打印二进制 1-1 以及架构中的规范。

exported_programmethod_name='forward'[来源]

返回由 'method_name' 指定的 ExportedProgram。

属性方法

返回此 ExecutorchProgramManager 中的方法集。

exir.backend.backend_api。to_backendargs[来源]

一个泛型函数,dispatch 发生在第一个参数的类型上。目前有 to 重载的 to_backend 函数:

注意: Python 是动态类型的语言,因此不能有适当的方法重载,因为这需要语言 能够在编译时区分类型。@to_backend.register to_backend将根据第一个 参数(需要类型注释)。但是,它不能将多个类型作为参数。

def to_backend(
    backend_id: str,
    edge_graph_module: ExportedProgram,
    compile_specs: List[CompileSpec],
) -> LoweredBackendModule:

def to_backend(
    graph_module: torch.fx.GraphModule,
    partitioner: Type[TPartitioner],
) -> torch.fx.GraphModule
exir.backend.backend_api。LoweredBackendModuleedge_programbackend_idprocessed_bytescompile_specs[来源]

nn.为包含 委托函数。这可以通过调用 to_backend 来创建。

属性backend_id

返回后端名称。

bufferextract_segments=Falsesegment_alignment=4096constant_tensor_alignment=delegate_alignment=无[来源]

返回包含序列化 ExecuTorch 二进制文件的缓冲区。

物业 compile_specs

返回具有静态元数据的后端特定对象列表,以配置 “compilation” 过程。

属性 original_module

返回原始 EXIR 模块

属性 processed_bytes

返回从 backend.preprocess 创建的委托 blob

programemit_stacktrace=False[来源]

返回表示序列化前 ExecuTorch 二进制文件的对象。

文档

访问 PyTorch 的全面开发人员文档

查看文档

教程

获取面向初学者和高级开发人员的深入教程

查看教程

资源

查找开发资源并解答您的问题

查看资源