Skip to content

Commit fdd4f43

Browse files
NXP backend: Remove max_pool2d maximum kernel size restriction. (pytorch#19688)
### Summary Neutron SW 3.1.1 removes the restriction for maximum supported kernel size of the MaxPool2D operator. This PR reflects this change in the Neutron backend. ### Test plan Unit test provided. cc @robert-kalmar @JakeStevens @digantdesai @rascani
1 parent 1feb56c commit fdd4f43

2 files changed

Lines changed: 3 additions & 13 deletions

File tree

backends/nxp/backend/ir/converter/node_converters/ops_converters/max_pool2d_with_indices_converter.py

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -83,14 +83,10 @@ def _is_supported_on_target(
8383
):
8484
return False
8585

86-
maximum_supported_kernel_size = 4096
8786
# If there is no padding, Neutron allows maximum stride of 4096. Otherwise, it's 32. But the converter
8887
# always inserts a `Pad` operator to add the padding, so the `MaxPool` never pads it's input itself, so
8988
# 4096 is always the limit. And similarly, the `MaxPool` input padding limitation does not apply either.
9089
maximum_supported_stride = 4096
91-
92-
if any(k > maximum_supported_kernel_size for k in kernel_size):
93-
return False
9490
if any(s > maximum_supported_stride for s in stride):
9591
return False
9692

backends/nxp/tests/ir/converter/node_converter/test_max_pool_2d_converter.py

Lines changed: 3 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -302,18 +302,12 @@ def test__basic_nsys_inference_qat(self, mocker):
302302
use_qat=True,
303303
)
304304

305-
def test__kernel_size_limit(self, mocker):
306-
kernel_size = (1, 4096)
305+
def test__large_kernel_size(self, mocker):
306+
kernel_size = (1, 5000)
307307
input_shape = (1, 4) + kernel_size
308-
model = MaxPool2dModule(kernel_size)
308+
model = MaxPool2dModule(kernel_size, stride=1)
309309
self.assert_delegated(model, input_shape, mocker)
310310

311-
def test__kernel_size_limit_exceeded(self):
312-
kernel_size = (1, 4097) # Exceeds the kernel size limit.
313-
input_shape = (1, 4) + kernel_size
314-
model = MaxPool2dModule(kernel_size)
315-
self.assert_not_delegated(model, input_shape)
316-
317311
def test__stride_limit__no_padding(self, mocker):
318312
stride = 4096
319313
input_shape = (1, 4, 1, 4096)

0 commit comments

Comments
 (0)