Arm backend: Keep internal shared qspec with uint8 IO#20978
Open
bdemirb wants to merge 3 commits into
Open
Conversation
When preserved uint8 model IO is used, SharedQspecQuantizer can merge image-scale tensors with wider internal activation ranges. Avoid using cat, concatenate, stack, pixel_shuffle, and slice as fallback shared-qspec bridge ops for graphs with uint8 IO. This keeps normal int8 quantization behaviour unchanged while preserving image input qparams for uint8 IO flows. Add a regression test covering image-like uint8 IO joined with a high-range branch. Signed-off-by: Baris Demir <baris.demir@arm.com> Change-Id: Ieeb1cf59e606674ac34050ebe21fc080740cc567
The uint8 IO shared-qspec guard previously removed bridge ops from SharedQspecQuantizer for the whole graph when a model had preserved uint8 IO. That protects image IO accuracy, but it also prevents internal cat clusters from sharing qparams. In RIFE this creates full-resolution FP32/QDQ concat islands before quantized convs. Keep the uint8 IO guard local to shared clusters that actually touch uint8 model IO. Internal shared-qspec clusters can still be annotated and lowered as quantized ops. Add regression coverage for both cases: cat must not bridge uint8 IO to high-range activations, while internal cat between quantized convs must still share qparams. Signed-off-by: Baris Demir <baris.demir@arm.com> Change-Id: I528572d6136f78cbfe27c75579c8b37a4e560887
🔗 Helpful Links🧪 See artifacts and rendered test results at hud.pytorch.org/pr/pytorch/executorch/20978
Note: Links to docs will display an error until the docs builds have been completed. ⏳ 255 Pending, 1 Unrelated FailureAs of commit cd7fb98 with merge base c2b273e ( FLAKY - The following job failed but was likely due to flakiness present on trunk:
This comment was automatically generated by Dr. CI and updates every 15 minutes. |
Collaborator
Author
|
@pytorchbot label "partner: arm" |
Collaborator
Author
|
@pytorchbot label "release notes: arm" |
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.
cc @digantdesai @freddan80 @per @zingo @oscarandersson8218 @mansnils @Sebastian-Larsson @robell @rascani