运行时平台抽象层 (PAL)¶
ExecuTorch 平台抽象层 (PAL) 提供了一种执行方法 environments 来覆盖作,例如:
获取当前时间。
打印日志语句。
进程/系统出现紧急情况。
PAL 函数声明位于executorch/runtime/platform/platform.h
.
覆盖默认 PAL¶
默认的 PAL 实现在executorch/runtime/platform/default/posix.cpp
.
它使用时间,将日志消息打印到 ,并进行其他默认假设。std::chrono::steady_clock
stderr
但是,如果它们不适用于您的系统,您可以通过以下方式覆盖默认 PAL:
包括
executorch/runtime/platform/platform.h
在您的应用程序之一 OR 文件中。.c
.cpp
定义一个或多个函数的实现。
et_pal_*()
默认的 PAL 函数是弱符号,因此请提供您自己的强符号 定义可以在链接时覆盖它们。要确保您的定义采用 precedence 的定义,则可能需要确保强定义先于弱定义 定义。
最小 PAL¶
如果由于系统不支持 Functions 而遇到构建问题
调用 ,您可以改用 no-op 最小 PALposix.cpp
executorch/runtime/platform/default/minimal.cpp
通过传递给 .这将避免
调用 、 、 以及任何其他使用 的东西。但是由于函数是空作的,
您将需要覆盖所有这些。-DEXECUTORCH_PAL_DEFAULT=minimal
cmake
fprintf()
std::chrono::steady_clock
posix.cpp
minimal.cpp
et_pal_*()