Commit 7712b97
authored
[Torch] Canonicalize aten.convolution with single int tuple params (#4388)
This PR is a more robust fix for the issue captured in #4380 .
Essentially, `torch.ops.aten.convolution` lowering to `tosa`, `linalg`
and `stablehlo` fail if `stride`, `padding`, `dilation` or
`output_padding` is a tuple with a singleton element, but convolution
operates on 2 or 3 spatial dimensions.
In the failing case, `torch.nn.Conv2d` with `padding= 'valid'` generates
a `torch.ops.aten.conv2d.padding` op in `ExportedProgram`, which is
later decomposed to `torch.ops.aten.convolution.default` with a single
padding value of [0] after running `ep.run_decompositions()`.
In #4380, I attempted to fix just the `torch-to-tosa` pass, but I later
realised that this is a more general bug in all the backends for
multiple params (thanks to
#4380 (comment)).
### Fix:
I followed #4250 to canonicalize aten.convolution if it operates on 2 or
3 spatial dims but params are singleton. For example, if
`aten.convolution` is 2D but `padding == [0]`, we canonicalize it to
`padding == [0, 0]`1 parent d1f6dcf commit 7712b97
File tree
6 files changed
+301
-1
lines changed- include/torch-mlir/Dialect/Torch/IR
- lib/Dialect/Torch/IR
- projects/pt1
- e2e_testing
- python
- torch_mlir_e2e_test/test_suite
- torch_mlir/jit_ir_importer/build_tools
- test/Dialect/Torch
6 files changed
+301
-1
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
7119 | 7119 | | |
7120 | 7120 | | |
7121 | 7121 | | |
| 7122 | + | |
7122 | 7123 | | |
7123 | 7124 | | |
7124 | 7125 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
6 | 6 | | |
7 | 7 | | |
8 | 8 | | |
| 9 | + | |
9 | 10 | | |
10 | 11 | | |
11 | 12 | | |
| |||
5898 | 5899 | | |
5899 | 5900 | | |
5900 | 5901 | | |
| 5902 | + | |
| 5903 | + | |
| 5904 | + | |
| 5905 | + | |
| 5906 | + | |
| 5907 | + | |
| 5908 | + | |
| 5909 | + | |
| 5910 | + | |
| 5911 | + | |
| 5912 | + | |
| 5913 | + | |
| 5914 | + | |
| 5915 | + | |
| 5916 | + | |
| 5917 | + | |
| 5918 | + | |
| 5919 | + | |
| 5920 | + | |
| 5921 | + | |
| 5922 | + | |
| 5923 | + | |
| 5924 | + | |
| 5925 | + | |
| 5926 | + | |
| 5927 | + | |
| 5928 | + | |
| 5929 | + | |
| 5930 | + | |
| 5931 | + | |
| 5932 | + | |
| 5933 | + | |
| 5934 | + | |
| 5935 | + | |
| 5936 | + | |
| 5937 | + | |
| 5938 | + | |
| 5939 | + | |
| 5940 | + | |
| 5941 | + | |
| 5942 | + | |
| 5943 | + | |
| 5944 | + | |
| 5945 | + | |
| 5946 | + | |
| 5947 | + | |
| 5948 | + | |
| 5949 | + | |
| 5950 | + | |
| 5951 | + | |
| 5952 | + | |
| 5953 | + | |
| 5954 | + | |
| 5955 | + | |
| 5956 | + | |
| 5957 | + | |
| 5958 | + | |
| 5959 | + | |
| 5960 | + | |
| 5961 | + | |
| 5962 | + | |
| 5963 | + | |
| 5964 | + | |
| 5965 | + | |
| 5966 | + | |
| 5967 | + | |
| 5968 | + | |
| 5969 | + | |
| 5970 | + | |
| 5971 | + | |
| 5972 | + | |
| 5973 | + | |
| 5974 | + | |
| 5975 | + | |
| 5976 | + | |
| 5977 | + | |
| 5978 | + | |
| 5979 | + | |
| 5980 | + | |
| 5981 | + | |
| 5982 | + | |
| 5983 | + | |
| 5984 | + | |
| 5985 | + | |
| 5986 | + | |
| 5987 | + | |
| 5988 | + | |
| 5989 | + | |
| 5990 | + | |
| 5991 | + | |
| 5992 | + | |
| 5993 | + | |
| 5994 | + | |
| 5995 | + | |
| 5996 | + | |
| 5997 | + | |
| 5998 | + | |
| 5999 | + | |
| 6000 | + | |
| 6001 | + | |
| 6002 | + | |
| 6003 | + | |
| 6004 | + | |
| 6005 | + | |
| 6006 | + | |
| 6007 | + | |
| 6008 | + | |
| 6009 | + | |
| 6010 | + | |
| 6011 | + | |
| 6012 | + | |
| 6013 | + | |
| 6014 | + | |
| 6015 | + | |
| 6016 | + | |
| 6017 | + | |
| 6018 | + | |
| 6019 | + | |
| 6020 | + | |
| 6021 | + | |
| 6022 | + | |
| 6023 | + | |
| 6024 | + | |
| 6025 | + | |
| 6026 | + | |
| 6027 | + | |
| 6028 | + | |
| 6029 | + | |
| 6030 | + | |
| 6031 | + | |
| 6032 | + | |
| 6033 | + | |
| 6034 | + | |
| 6035 | + | |
| 6036 | + | |
| 6037 | + | |
| 6038 | + | |
| 6039 | + | |
| 6040 | + | |
| 6041 | + | |
| 6042 | + | |
| 6043 | + | |
| 6044 | + | |
| 6045 | + | |
| 6046 | + | |
| 6047 | + | |
| 6048 | + | |
| 6049 | + | |
| 6050 | + | |
| 6051 | + | |
| 6052 | + | |
| 6053 | + | |
| 6054 | + | |
| 6055 | + | |
5901 | 6056 | | |
5902 | 6057 | | |
5903 | 6058 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1130 | 1130 | | |
1131 | 1131 | | |
1132 | 1132 | | |
| 1133 | + | |
1133 | 1134 | | |
1134 | 1135 | | |
| 1136 | + | |
1135 | 1137 | | |
1136 | 1138 | | |
1137 | 1139 | | |
| |||
2163 | 2165 | | |
2164 | 2166 | | |
2165 | 2167 | | |
| 2168 | + | |
2166 | 2169 | | |
2167 | 2170 | | |
2168 | 2171 | | |
| |||
2912 | 2915 | | |
2913 | 2916 | | |
2914 | 2917 | | |
| 2918 | + | |
| 2919 | + | |
| 2920 | + | |
| 2921 | + | |
| 2922 | + | |
| 2923 | + | |
| 2924 | + | |
2915 | 2925 | | |
2916 | 2926 | | |
2917 | 2927 | | |
| |||
2922 | 2932 | | |
2923 | 2933 | | |
2924 | 2934 | | |
| 2935 | + | |
2925 | 2936 | | |
| 2937 | + | |
2926 | 2938 | | |
2927 | 2939 | | |
2928 | 2940 | | |
| |||
4310 | 4322 | | |
4311 | 4323 | | |
4312 | 4324 | | |
| 4325 | + | |
| 4326 | + | |
| 4327 | + | |
| 4328 | + | |
4313 | 4329 | | |
4314 | 4330 | | |
4315 | 4331 | | |
4316 | 4332 | | |
4317 | 4333 | | |
| 4334 | + | |
4318 | 4335 | | |
4319 | 4336 | | |
4320 | 4337 | | |
4321 | 4338 | | |
4322 | 4339 | | |
4323 | 4340 | | |
4324 | 4341 | | |
| 4342 | + | |
4325 | 4343 | | |
4326 | 4344 | | |
4327 | 4345 | | |
| |||
Lines changed: 2 additions & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
612 | 612 | | |
613 | 613 | | |
614 | 614 | | |
615 | | - | |
| 615 | + | |
| 616 | + | |
616 | 617 | | |
617 | 618 | | |
618 | 619 | | |
| |||
Lines changed: 97 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
304 | 304 | | |
305 | 305 | | |
306 | 306 | | |
| 307 | + | |
| 308 | + | |
| 309 | + | |
| 310 | + | |
| 311 | + | |
| 312 | + | |
| 313 | + | |
| 314 | + | |
| 315 | + | |
| 316 | + | |
| 317 | + | |
| 318 | + | |
| 319 | + | |
| 320 | + | |
| 321 | + | |
| 322 | + | |
| 323 | + | |
| 324 | + | |
| 325 | + | |
| 326 | + | |
| 327 | + | |
| 328 | + | |
| 329 | + | |
| 330 | + | |
| 331 | + | |
| 332 | + | |
| 333 | + | |
| 334 | + | |
| 335 | + | |
| 336 | + | |
| 337 | + | |
307 | 338 | | |
308 | 339 | | |
309 | 340 | | |
| |||
901 | 932 | | |
902 | 933 | | |
903 | 934 | | |
| 935 | + | |
| 936 | + | |
| 937 | + | |
| 938 | + | |
| 939 | + | |
| 940 | + | |
| 941 | + | |
| 942 | + | |
| 943 | + | |
| 944 | + | |
| 945 | + | |
| 946 | + | |
| 947 | + | |
| 948 | + | |
| 949 | + | |
| 950 | + | |
| 951 | + | |
| 952 | + | |
| 953 | + | |
| 954 | + | |
| 955 | + | |
| 956 | + | |
| 957 | + | |
| 958 | + | |
| 959 | + | |
| 960 | + | |
| 961 | + | |
| 962 | + | |
| 963 | + | |
| 964 | + | |
| 965 | + | |
| 966 | + | |
| 967 | + | |
904 | 968 | | |
905 | 969 | | |
906 | 970 | | |
| |||
1569 | 1633 | | |
1570 | 1634 | | |
1571 | 1635 | | |
| 1636 | + | |
| 1637 | + | |
| 1638 | + | |
| 1639 | + | |
| 1640 | + | |
| 1641 | + | |
| 1642 | + | |
| 1643 | + | |
| 1644 | + | |
| 1645 | + | |
| 1646 | + | |
| 1647 | + | |
| 1648 | + | |
| 1649 | + | |
| 1650 | + | |
| 1651 | + | |
| 1652 | + | |
| 1653 | + | |
| 1654 | + | |
| 1655 | + | |
| 1656 | + | |
| 1657 | + | |
| 1658 | + | |
| 1659 | + | |
| 1660 | + | |
| 1661 | + | |
| 1662 | + | |
| 1663 | + | |
| 1664 | + | |
| 1665 | + | |
| 1666 | + | |
| 1667 | + | |
| 1668 | + | |
1572 | 1669 | | |
1573 | 1670 | | |
1574 | 1671 | | |
| |||
0 commit comments