• 文档 >
  • 运行时平台抽象层 (PAL)
快捷方式

运行时平台抽象层 (PAL)

ExecuTorch 平台抽象层 (PAL) 为执行环境提供了一种方法来覆盖操作,例如

  • 获取当前时间。

  • 打印日志语句。

  • 使进程/系统恐慌。

PAL 函数声明位于 executorch/runtime/platform/platform.h

覆盖默认 PAL

默认 PAL 实现位于 executorch/runtime/platform/target/Posix.cpp。它使用 std::chrono::steady_clock 来获取时间,将日志消息打印到 stderr,并做出其他默认假设。

但是,如果这些默认设置不适用于您的系统,您可以通过以下步骤覆盖默认 PAL:

默认 PAL 函数是弱符号,因此提供您自己的强符号定义可以在链接时覆盖它们。为了确保您的定义优先,您可能需要确保强定义在链接顺序中先于弱定义。

最小 PAL

如果您遇到构建问题,因为您的系统不支持 Posix.cpp 调用的函数,您可以使用 executorch/runtime/platform/target/Minimal.cpp 中的无操作最小 PAL,方法是使用 buck2 标志 -c executorch.pal_default=minimal 进行构建。这将避免调用 fprintf()std::chrono::steady_clock 以及 Posix.cpp 使用的任何其他内容。但是,由于 Minimal.cpp 中的 et_pal_*() 函数是无操作的,您需要覆盖所有这些函数。

文档

访问 PyTorch 的全面开发者文档

查看文档

教程

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

查看教程

资源

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

查看资源