[QNN] Enable ConvTranspose + BatchNorm fusion after #23170
I maintainer di solito rispondono entro 1 giorno
@psiddh ci sta già lavorando.
Dal 28/9/2026.
Valutazione
Questa issue non è ancora stata valutata.
Descrizione
Feature and motivation
Enable ConvTranspose + BatchNorm fusion in the Qualcomm/QNN pass pipeline after #23170 lands.
FuseBatchNormWithConv.can_fuse currently rejects all transposed convolutions. This workaround avoids the incorrect output-channel scaling in the shared pass discussed in #22994. PR #23170 fixes that shared pass, including grouped transposed weights, but leaves the QNN guard in place. Consequently, QNN will continue to retain standalone BatchNorm operations after that fix.
Proposed work
- Remove the transposed-convolution guard once #23170 is merged, reusing the corrected shared implementation. Update the subclass documentation or remove the redundant wrapper as appropriate.
- Add Qualcomm regression cases for
ConvTranspose + BatchNorm, covering equal and unequal input/output channel counts, grouped convolutions, and convolution bias enabled/disabled where supported by QNN. - Use nontrivial BatchNorm running statistics and affine parameters. Assert that BatchNorm is folded and the transformed output matches eager execution.
- Run QNN delegation/execution coverage for the supported configurations and retain coverage for ordinary convolution fusion.
Additional context
Local CPU review validation of #23170 with PyTorch 2.13 passed all six new tests; four reproduce the original bug with the pre-fix pass. Eighteen additional grouped/depthwise ConvTranspose1d/2d/3d cases passed through the exported-program transform path. These checks validate the shared pass; QNN integration still needs the coverage above.
cc @cccclai @winskuo-quic @shewu-quic @haowhsu-quic @DannyYuyang-quic @cbilgin @abhinaykukkadapu @psiddh
- Lingua principale
- Python
- Stelle
- 5k
- Fork
- 1.2k
- Merge medio
- 2g 7h
- PR unite (30g)
- 521
Preparare l'ambiente
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di pytorch/executorch
-
enhancement triaged
Difficoltà 2/5 Mezza giornata Idoneità per principianti 68/100
pytorch/executorch#21640 ·
I maintainer di solito rispondono entro 1 giorno
-
[RFC] ExecuTorch Persisting Device Specialized Delegate ArtifactsForse già presa @JacobSzwejbka l’ha presa oggi. Aperta
pytorch/executorch#23192 · 1 commento · 1 reazione · 1 assegnatario ·
I maintainer di solito rispondono entro 1 giorno
-
enhancement module: examples
Difficoltà 5/5 Più di una settimana Idoneità per principianti 20/100
pytorch/executorch#23164 · 7 commenti · 2 reazioni ·
I maintainer di solito rispondono entro 1 giorno
-
Qualcomm: 8-bit per-channel weight scales are floored at the 16-bit eps, and the HTP miscomputes near-zero channelsForse già presa @psiddh l’ha presa 3 giorni fa. Apertamodule: qnn module: quantization partner: qualcomm
pytorch/executorch#23160 · 1 commento · 1 assegnatario ·
I maintainer di solito rispondono entro 1 giorno
-
[cpu kernels] native_layer_norm: layer_norm_scalar returns NaN on large-mean rows; Half/BF16 at N>=256 slow after #23153Forse già presa @JakeStevens l’ha presa 3 giorni fa. Apertamodule: kernels
pytorch/executorch#23159 · 2 commenti · 1 assegnatario ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di pytorch/executorch
Issue simili
-
[Bug] @deck.gl/arcgis dist import resolves to unpublished @deck.gl/core source path (9.3.11, 9.4.0)Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
I maintainer di solito rispondono entro 1 giorno
-
workflow: a tick's dispatch counts as 'only this step', and no review self-grants a round unattendedApertaworkflow
Difficoltà 2/5 1-3 ore Idoneità per principianti 85/100
kristofdegrave/homeassistant-smart-charging#1505 ·
I maintainer di solito rispondono entro 1 giorno
-
New Submission: TropWATERApertametadata submission
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 65/100
canonical/content-cache-operator#163 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
[submission]Apertasubmission
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 65/100
leanprover/lean-eval-submissions#1852 ·
I maintainer di solito rispondono entro 1 giorno