Fix quantized_w8a32_conv1d fusion and operator#17290
Fix quantized_w8a32_conv1d fusion and operator#17290ethansfng wants to merge 1 commit intopytorch:mainfrom
Conversation
Summary: 1. Python fusion pass (fusion_pass.py): The permute nodes created in get_args_and_kwargs_mixed_w8a32_conv were missing val metadata, causing SpecViolationError during ExportedProgram validation. Added val computation using fake_mode, matching the pattern used by AddmmPattern. 2. C++ operators (generic + HiFi): cnn_step was called once with wrong dimensions (input length instead of kernel_size for d1), only producing out_channels values instead of the full output. Fixed to loop over output time steps, calling cnn_step per position with correct kernel_size, then scattering to NCL output layout. Differential Revision: D92565258
🔗 Helpful Links🧪 See artifacts and rendered test results at hud.pytorch.org/pr/pytorch/executorch/17290
Note: Links to docs will display an error until the docs builds have been completed. ❌ 2 New FailuresAs of commit 354a924 with merge base 7823792 ( NEW FAILURES - The following jobs have failed:
This comment was automatically generated by Dr. CI and updates every 15 minutes. |
|
@ethansfng has exported this pull request. If you are a Meta employee, you can view the originating Diff in D92565258. |
This PR needs a
|
Summary:
Python fusion pass (fusion_pass.py): The permute nodes created in
get_args_and_kwargs_mixed_w8a32_conv were missing val metadata, causing
SpecViolationError during ExportedProgram validation. Added val computation
using fake_mode, matching the pattern used by AddmmPattern.
C++ operators (generic + HiFi): cnn_step was called once with wrong
dimensions (input length instead of kernel_size for d1), only producing
out_channels values instead of the full output. Fixed to loop over output
time steps, calling cnn_step per position with correct kernel_size, then
scattering to NCL output layout.
Differential Revision: D92565258