Repository navigation
Add opt-in Espressif operator-library export pipeline - #24309
Merged
Merged
Conversation
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.
🔗 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 FailuresAs of commit d9bf9c7 with merge base 043c65b ( This comment was automatically generated by Dr. CI and updates every 15 minutes. |
This PR needs a
|
rascani
marked this pull request as ready for review
October 29, 2026 21:40
JakeStevens
approved these changes
Oct 30, 2026
This branch was previously deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
The Espressif exporter currently lowers supported regions through the ESP-NN delegate. Add an opt-in
use_operator_library=Trueroute toto_espnn_edge()that usesEspPassManagerand the existingEspNNQuantizer. 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
EspTesterand 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.