评价此页

自定义算子#

创建时间:2025 年 7 月 28 日 | 最后更新时间:2025 年 7 月 28 日

摘要

  • 使用自定义算子可以让 torch.compile 将函数视为不透明。 torch.compile 永远不会追踪到函数内部,并且 Inductor(后端)将按原样运行函数。

您可能希望在以下任何情况下使用自定义算子:

  • 您的代码调用了某些 C/C++/CUDA 代码。Dynamo 是一个 Python 字节码解释器,通常不知道如何处理调用绑定到 Python 的 C/C++/CUDA 函数。

  • Dynamo 和非严格追踪在追踪函数时遇到问题,而您希望 torch.compile 忽略该函数。

有关如何将 Python 函数包装成 torch.compile 理解的自定义算子的更多详细信息,请参阅 Python 自定义算子教程

对于更高级的用例,您可能希望使用我们的 C++ 自定义算子 API;有关更多信息,请参阅 此处