自定義運算元#
建立時間: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;有關更多資訊,請參閱 此處。