RFC-00xx-device-scoped-inductor-operator-policies#101
Conversation
|
Hi @peaceorwell! Thank you for your pull request and welcome to our community. Action RequiredIn order to merge any pull request (code, docs, etc.), we require contributors to sign our Contributor License Agreement, and we don't seem to have one on file for you. ProcessIn order for us to review and merge your suggested changes, please sign at https://code.facebook.com/cla. If you are contributing on behalf of someone else (eg your employer), the individual CLA may not be sufficient and your employer may need to sign the corporate CLA. Once the CLA is signed, our tooling will perform checks and validations. Afterwards, the pull request will be tagged with If you have received this in error or have any questions, please contact us at cla@meta.com. Thanks! |
Summary
This RFC proposes an internal, immutable, cache-aware operator policy that lets Inductor backends make device-scoped decomposition, lowering, and fallback decisions without mutating process-wide tables.
The first version is intentionally limited to one active accelerator backend (plus CPU), compile-scoped decomposition selection, per-node lowering resolution, and policy identity in both AOTAutograd and Inductor FX graph cache keys.
Why this is a draft
The design and alternatives are ready for early inspection, but two Gate 0 artifacts still need to be attached before general review:
mainprototype proving device isolation and two-level cache separation;The PR should remain draft until those artifacts and the author's final technical review are complete.
Proposed implementation sequence
AI assistance disclosure
This proposal is relevant to an existing out-of-tree Inductor integration that currently carries device-specific decomposition/lowering state and manual cache-key plumbing. The document explicitly marks unverified evidence and unresolved design choices; it is not being presented as ready for implementation.