目录

将后端 Delegate 集成到 ExecuTorch 中

免责声明:我们计划围绕委托重组存储库。 因此,其中一些准则将来会发生变化。

这是将后端委托与 ExecuTorch 集成时的高级指南。

目录结构

委托文件应位于以下目录下: 。委托人名称应是唯一的。executorch/backends/<delegate_name>/

Python 源文件

委托 Python 文件,例如 ExecuTorch AOT 流的实现或函数,不包括任何外部第三方 dependencies 及其文件,应该安装并可用于 顶级 ExecuTorch 软件包。第三方依赖请参考这里preprocess()partition()

C++ 源文件

至少,委托必须为构建其 C++ 提供 CMake 支持 来源。

对于 CMake 设置,代理目录应包含在 top level 文件,以及 应该使用 ExecuTorch 构建标志有条件地构建,例如 ,请参阅示例。 第三方依赖请参考这里CMakeLists.txtadd_subdirectoryEXECUTORCH_BUILD_<DELEGATE_NAME>EXECUTORCH_BUILD_XNNPACK

测试

应在 下添加测试 。测试 可以是 Python 或 C++ 测试。用于添加更复杂的端到端 (e2e) 测试,请联系我们。executorch/backends/<delegate_name>/test

常见测试类型:

  • 测试 AOT 逻辑(如 或 AOT)的简单 python 单元测试 export 流(从partitioner().ptenn.Module)

  • 运行时 C++ 测试,使用 gtest 测试委托或运行时逻辑。init()execute()

文档

委托必须包含解释委托的基础知识、目录结构、功能和已知 问题(如果有)。executorch/backends/<delegate_name>/README.md

除上述步骤之外的任何额外设置步骤都应记录在executorch/backends/<delegate_name>/setup.md

文档

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

查看文档

教程

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

查看教程

资源

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

查看资源