Skip to content

Add opt-in Espressif operator-library export pipeline - #24309

Merged
JakeStevens merged 1 commit into
mainfrom
codex/espressif-operator-library-export
Oct 30, 2026
Merged

JakeStevens merged 1 commit into
mainfrom
codex/espressif-operator-library-export

Conversation

@rascani

@rascani rascani commented Oct 29, 2026 •

Copy link
Copy Markdown
Contributor

Summary

The Espressif exporter currently lowers supported regions through the ESP-NN delegate. Add an opt-in use_operator_library=True route to to_espnn_edge() that uses EspPassManager and the existing EspNNQuantizer. This first step retains executable portable operators and Q/DQ, with normal Edge validation, direct-operator reporting, and strict fallback handling. The delegate remains the default for existing callers.

Add the frontend EspTester and tests for both export entry points, multiple methods, constants, shared float consumers, fallback, and serialization. Multiply lowering (#24310) and runtime execution (#24311) follow in this stack.

Authored with AI assistance using Codex.

Test plan

The isolated frontend change passed all 67 Espressif tests, including 11 new frontend tests. After rebasing the complete stack onto main, all 146 Python tests and all 11 optimized ESP32-S3 implementation cases passed. Scoped lint and whitespace checks also passed.

python -m pytest -q backends/espressif/test --disable-warnings

Introduce EspPassManager and a frontend EspTester using EspNNQuantizer. The new keyword-only export option preserves portable compute and executable Q/DQ with Edge IR checks enabled, reports remaining compute, and enforces strict fallback handling. Existing callers continue to use the delegate path.

Validated with the complete 67-test Espressif host suite, including 11 new frontend tests covering both export routes, shared float consumers, strict fallback, multiple methods, constants, and serialization. Scoped lintrunner and whitespace checks passed.

Authored with AI assistance using Codex.
@pytorch-bot

pytorch-bot Bot commented Oct 29, 2026 •

Copy link
Copy Markdown

🔗 Helpful Links

🧪 See artifacts and rendered test results at hud.pytorch.org/pr/pytorch/executorch/24309

Note: Links to docs will display an error until the docs builds have been completed.

✅ No Failures

As of commit d9bf9c7 with merge base 043c65b (image):
💚 Looks good so far! There are no failures yet. 💚

This comment was automatically generated by Dr. CI and updates every 15 minutes.

@rascani
rascani added this pull request to stack #24312 October 29, 2026 21:32
@meta-cla meta-cla Bot added the CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. label Oct 29, 2026
@github-actions

Copy link
Copy Markdown

This PR needs a release notes: label

If your change should be included in the release notes (i.e. would users of this library care about this change?), please use a label starting with release notes:. This helps us keep track and include your important work in the next release notes.

To add a label, you can comment to pytorchbot, for example
@pytorchbot label "release notes: none"

For more information, see
https://github.com/pytorch/pytorch/wiki/PyTorch-AutoLabel-Bot#why-categorize-for-release-notes-and-how-does-it-work.

@rascani rascani changed the title codex/espressif operator library export Add opt-in Espressif operator-library export pipeline Oct 29, 2026
@rascani
rascani requested a review from JakeStevens October 29, 2026 21:40
@rascani
rascani marked this pull request as ready for review October 29, 2026 21:40
@JakeStevens
JakeStevens merged commit ea0f88f into main Oct 30, 2026
226 of 229 checks passed
@JakeStevens
JakeStevens deleted the codex/espressif-operator-library-export branch October 30, 2026 14:27

This branch was previously deployed

1 inactive deployment
cadence — d9bf9c77 Deployed Oct 29, 2026 by rascani via hifi-op-test / hifi4 #35412
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants