Add a16w8 per-op test for split#19600
Conversation
🔗 Helpful Links🧪 See artifacts and rendered test results at hud.pytorch.org/pr/pytorch/executorch/19600
Note: Links to docs will display an error until the docs builds have been completed. ❗ 1 Active SEVsThere are 1 currently active SEVs. If your PR is affected, please view them below: ⏳ No Failures, 81 PendingAs of commit efae0d5 with merge base 42d87c4 ( This comment was automatically generated by Dr. CI and updates every 15 minutes. |
|
|
This PR needs a
|
Summary: Add int16 activation / int8 weight (a16w8) quantization tests for `aten.split` on Ethos-U55 and Ethos-U85. ## Changes - Add `a16w8_split_test_parameters` dict with 3 test configurations covering 1D, 2D, and 3D splits along different axes - Add `test_split_a16w8_u55_INT` using `EthosU55PipelineINT` with `a16w8_quantization=True, symmetric_io_quantization=True, qtol=128, epsilon=2**-16` - Add `test_split_a16w8_u85_INT` using `EthosU85PipelineINT` with same kwargs - Register `ops/test_split.py` in `fbcode/` and `xplat/` `targets.bzl` bypass-pytorch-oss-checks Differential Revision: D104533281
2022aff to
88e9821
Compare
|
@christine-long-meta has exported this pull request. If you are a Meta employee, you can view the originating Diff in D104533281. |
Summary: Pull Request resolved: pytorch#19600 Add int16 activation / int8 weight (a16w8) quantization tests for `aten.split` on Ethos-U55 and Ethos-U85. ## Changes - Add `a16w8_split_test_parameters` dict with 3 test configurations covering 1D, 2D, and 3D splits along different axes - Add `test_split_a16w8_u55_INT` using `EthosU55PipelineINT` with `a16w8_quantization=True, symmetric_io_quantization=True, qtol=128, epsilon=2**-16` - Add `test_split_a16w8_u85_INT` using `EthosU85PipelineINT` with same kwargs - Register `ops/test_split.py` in `fbcode/` and `xplat/` `targets.bzl` bypass-pytorch-oss-checks Differential Revision: D104533281
88e9821 to
f550f2b
Compare
f550f2b to
8fd5ef8
Compare
Summary: Add int16 activation / int8 weight (a16w8) quantization tests for `aten.var` on Ethos-U55 and Ethos-U85. ## Changes - Add `test_parameters_ethosu` class attribute to `Var` with 2 test configurations (4D tensors with correction=0 and correction=1) - Switch existing `test_var_dim_u55_INT_no_dim` and `test_var_dim_u85_INT_no_dim` from `Var.test_parameters` to `Var.test_parameters_ethosu` for Ethos-U compatible tensor shapes - Add `test_var_a16w8_u55_INT` using `EthosU55PipelineINT` with `a16w8_quantization=True, symmetric_io_quantization=True` - Add `test_var_a16w8_u85_INT` using `EthosU85PipelineINT` with same kwargs - Register `ops/test_var.py` in `fbcode/` and `xplat/` `targets.bzl` Differential Revision: D104532362
Summary: Add int16 activation / int8 weight (a16w8) quantization tests for `aten.conv1d` on Ethos-U55 and Ethos-U85. ## Changes - Add `test_conv1d_a16w8_u55_INT` using `EthosU55PipelineINT` with `a16w8_quantization=True, symmetric_io_quantization=True`, reusing existing `test_data_INT` parameters - Add `test_conv1d_a16w8_u85_INT` using `EthosU85PipelineINT` with same kwargs - Register `ops/test_conv1d.py` in `fbcode/` and `xplat/` `targets.bzl` Reviewed By: Ninja91 Differential Revision: D104532360
Summary: Add int16 activation / int8 weight (a16w8) quantization tests for `aten.gelu` on Ethos-U55 and Ethos-U85. ## Changes - Add `test_gelu_a16w8_u55_INT` using `EthosU55PipelineINT` with `a16w8_quantization=True, symmetric_io_quantization=True, qtol=128, epsilon=2**-16`, reusing existing `Gelu.test_data` parameters (12 test configurations covering both \`none\` and \`tanh\` approximation modes) - Add `test_gelu_a16w8_u85_INT` using `EthosU85PipelineINT` with same kwargs - Register `ops/test_gelu.py` in `fbcode/` and `xplat/` `targets.bzl` bypass-pytorch-oss-checks Differential Revision: D104532359
Summary: Add int16 activation / int8 weight (a16w8) quantization tests for `aten.bmm` on Ethos-U55 and Ethos-U85. ## Changes - Add `a16w8_bmm_test_parameters` dict with 5 test configurations covering same-shape, different-shape, rectangular, batch-10, and negative-value tensors - Add `test_bmm_a16w8_u55_INT` using `OpNotSupportedPipeline` to verify that bmm with INT16 inputs is correctly rejected on U55 (which does not support bmm with int16) - Add `test_bmm_a16w8_u85_INT` using `EthosU85PipelineINT` with `a16w8_quantization=True, symmetric_io_quantization=True` - Remove unused `aten_op_mm` and `exir_op_mm` variables - Register `ops/test_bmm.py` in `fbcode/` and `xplat/` `targets.bzl` Differential Revision: D104532363
Summary: Add int16 activation / int8 weight (a16w8) quantization tests for `aten.split` on Ethos-U55 and Ethos-U85. ## Changes - Add `a16w8_split_test_parameters` dict with 3 test configurations covering 1D, 2D, and 3D splits along different axes - Add `test_split_a16w8_u55_INT` using `EthosU55PipelineINT` with `a16w8_quantization=True, symmetric_io_quantization=True` - Add `test_split_a16w8_u85_INT` using `EthosU85PipelineINT` with same kwargs - Register `ops/test_split.py` in `fbcode/` and `xplat/` `targets.bzl` Differential Revision: D104533281
8fd5ef8 to
efae0d5
Compare
Summary:
Add int16 activation / int8 weight (a16w8) quantization tests for
aten.spliton Ethos-U55 and Ethos-U85.Changes
a16w8_split_test_parametersdict with 3 test configurations covering 1D, 2D, and 3D splits along different axestest_split_a16w8_u55_INTusingEthosU55PipelineINTwitha16w8_quantization=True, symmetric_io_quantization=Truetest_split_a16w8_u85_INTusingEthosU85PipelineINTwith same kwargsops/test_split.pyinfbcode/andxplat/targets.bzlDifferential Revision: D104533281