Skip to content

Commit f7e6dbf

Browse files
authored
Reset Dynamo Before Export for all XNNPACK Tests (#9561)
https://github.com/pytorch/executorch/actions/runs/14047575373/job/39331644423 There seems to be some CI issues with: ``` torch._dynamo.exc.FailOnRecompileLimitHit: recompile_limit reached with one_graph=True. Excessive recompilations can degrade performance due to the compilation overhead of each recompilation. To monitor recompilations, enable TORCH_LOGS=recompiles. If recompilations are expected, consider increasing ``` To help resolve this we reset dynamo at setup for all unittests. Let's see if this helps
1 parent 7248b19 commit f7e6dbf

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

60 files changed

+182
-0
lines changed

backends/xnnpack/test/models/deeplab_v3.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,9 @@ def forward(self, *args):
2323

2424

2525
class TestDeepLabV3(unittest.TestCase):
26+
def setUp(self):
27+
torch._dynamo.reset()
28+
2629
dl3 = DL3Wrapper()
2730
dl3 = dl3.eval()
2831
model_inputs = (torch.randn(1, 3, 224, 224),)

backends/xnnpack/test/models/edsr.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,9 @@
1414

1515

1616
class TestEDSR(unittest.TestCase):
17+
def setUp(self):
18+
torch._dynamo.reset()
19+
1720
edsr = edsr_r16f64(2, False).eval() # noqa
1821
model_inputs = (torch.randn(1, 3, 224, 224),)
1922

backends/xnnpack/test/models/emformer_rnnt.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,9 @@
1313

1414

1515
class TestEmformerModel(unittest.TestCase):
16+
def setUp(self):
17+
torch._dynamo.reset()
18+
1619
class EmformerRnnt(torch.nn.Module):
1720
def __init__(self):
1821
super().__init__()

backends/xnnpack/test/models/inception_v3.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,9 @@
1313

1414

1515
class TestInceptionV3(unittest.TestCase):
16+
def setUp(self):
17+
torch._dynamo.reset()
18+
1619
ic3 = models.inception_v3(weights="IMAGENET1K_V1").eval() # noqa
1720
model_inputs = (torch.randn(1, 3, 224, 224),)
1821

backends/xnnpack/test/models/inception_v4.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,9 @@
1212

1313

1414
class TestInceptionV4(unittest.TestCase):
15+
def setUp(self):
16+
torch._dynamo.reset()
17+
1518
ic4 = inception_v4(pretrained=False).eval()
1619
model_inputs = (torch.randn(3, 299, 299).unsqueeze(0),)
1720

backends/xnnpack/test/models/llama2_et_example.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,9 @@
1313

1414

1515
class TestLlama2ETExample(unittest.TestCase):
16+
def setUp(self):
17+
torch._dynamo.reset()
18+
1619
def test_f32(self):
1720
self._test()
1821

backends/xnnpack/test/models/mobilebert.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,9 @@
1212

1313

1414
class TestMobilebert(unittest.TestCase):
15+
def setUp(self):
16+
torch._dynamo.reset()
17+
1518
# pyre-ignore
1619
mobilebert = MobileBertModel(MobileBertConfig()).eval()
1720
example_inputs = (torch.tensor([[101, 7592, 1010, 2026, 3899, 2003, 10140, 102]]),)

backends/xnnpack/test/models/mobilenet_v2.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,9 @@
1414

1515

1616
class TestMobileNetV2(unittest.TestCase):
17+
def setUp(self):
18+
torch._dynamo.reset()
19+
1720
mv2 = models.mobilenetv2.mobilenet_v2(weights=MobileNet_V2_Weights)
1821
mv2 = mv2.eval()
1922
model_inputs = (torch.randn(1, 3, 224, 224),)

backends/xnnpack/test/models/mobilenet_v3.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,9 @@
1313

1414

1515
class TestMobileNetV3(unittest.TestCase):
16+
def setUp(self):
17+
torch._dynamo.reset()
18+
1619
mv3 = models.mobilenetv3.mobilenet_v3_small(pretrained=True)
1720
mv3 = mv3.eval()
1821
model_inputs = (torch.randn(1, 3, 224, 224),)

backends/xnnpack/test/models/resnet.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,9 @@
1313

1414

1515
class TestResNet18(unittest.TestCase):
16+
def setUp(self):
17+
torch._dynamo.reset()
18+
1619
inputs = (torch.randn(1, 3, 224, 224),)
1720
dynamic_shapes = (
1821
{

backends/xnnpack/test/models/torchvision_vit.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,9 @@
1212

1313

1414
class TestViT(unittest.TestCase):
15+
def setUp(self):
16+
torch._dynamo.reset()
17+
1518
vit = models.vision_transformer.vit_b_16(weights="IMAGENET1K_V1")
1619
vit = vit.eval()
1720
model_inputs = (torch.randn(1, 3, 224, 224),)

backends/xnnpack/test/models/very_big_model.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,9 @@
1111

1212

1313
class TestVeryBigModel(unittest.TestCase):
14+
def setUp(self):
15+
torch._dynamo.reset()
16+
1417
class BigModel(torch.nn.Module):
1518
def __init__(self):
1619
super().__init__()

backends/xnnpack/test/models/w2l.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,9 @@
1212

1313

1414
class TestW2L(unittest.TestCase):
15+
def setUp(self):
16+
torch._dynamo.reset()
17+
1518
batch_size = 10
1619
input_frames = 700
1720
vocab_size = 4096

backends/xnnpack/test/ops/test_abs.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,9 @@
1111

1212

1313
class TestAbs(unittest.TestCase):
14+
def setUp(self):
15+
torch._dynamo.reset()
16+
1417
class Abs(torch.nn.Module):
1518
def __init__(self):
1619
super().__init__()

backends/xnnpack/test/ops/test_add.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,9 @@
1111

1212

1313
class TestAdd(unittest.TestCase):
14+
def setUp(self):
15+
torch._dynamo.reset()
16+
1417
class Add(torch.nn.Module):
1518
def __init__(self):
1619
super().__init__()

backends/xnnpack/test/ops/test_avgpool2d.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,9 @@
1111

1212

1313
class TestAvgPool2d(unittest.TestCase):
14+
def setUp(self):
15+
torch._dynamo.reset()
16+
1417
class AvgPool2d(torch.nn.Module):
1518
def __init__(
1619
self, count_include_pad=False, ceil_mode=False, divisor_override=None

backends/xnnpack/test/ops/test_bilinear2d.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,9 @@
1414

1515

1616
class TestUpsampleBilinear2d(unittest.TestCase):
17+
def setUp(self):
18+
torch._dynamo.reset()
19+
1720
class StaticResizeBilinear2dModule(torch.nn.Module):
1821
def forward(self, x):
1922
a = torch.nn.functional.interpolate(

backends/xnnpack/test/ops/test_bmm.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,9 @@
1111

1212

1313
class TestBMM(unittest.TestCase):
14+
def setUp(self):
15+
torch._dynamo.reset()
16+
1417
class BMM(torch.nn.Module):
1518
def __init__(self):
1619
super().__init__()

backends/xnnpack/test/ops/test_cat.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,9 @@
1313

1414

1515
class TestCat(unittest.TestCase):
16+
def setUp(self):
17+
torch._dynamo.reset()
18+
1619
class Cat(torch.nn.Module):
1720
def __init__(self, dim=0):
1821
super().__init__()

backends/xnnpack/test/ops/test_ceil.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,9 @@
1111

1212

1313
class TestCeil(unittest.TestCase):
14+
def setUp(self):
15+
torch._dynamo.reset()
16+
1417
class Ceil(torch.nn.Module):
1518
def __init__(self):
1619
super().__init__()

backends/xnnpack/test/ops/test_check_quant_params.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,9 @@
1414

1515

1616
class TestCheckQuantParams(unittest.TestCase):
17+
def setUp(self):
18+
torch._dynamo.reset()
19+
1720
def create_invalid_value_injector(
1821
self, invalid_value, is_per_channel=False, is_zp=False
1922
):
@@ -46,6 +49,7 @@ def inject_invalid_scale_in_per_tensor(aten):
4649
return inject_invalid_scale_in_per_tensor
4750

4851
def _test_check_quant_message(self, ep_modifier, expected_message):
52+
torch._dynamo.reset()
4953
mod = torch.nn.Linear(10, 10)
5054
quantizer = XNNPACKQuantizer()
5155
captured = export_for_training(mod, (torch.randn(1, 10),)).module()

backends/xnnpack/test/ops/test_clamp.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,9 @@
1111

1212

1313
class TestClamp(unittest.TestCase):
14+
def setUp(self):
15+
torch._dynamo.reset()
16+
1417
class Clamp(torch.nn.Module):
1518
def __init__(self, min_val=None, max_val=None):
1619
super().__init__()

backends/xnnpack/test/ops/test_conv1d.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,9 @@
1919

2020

2121
class TestConv1d(unittest.TestCase):
22+
def setUp(self):
23+
torch._dynamo.reset()
24+
2225
class Conv1d(torch.nn.Module):
2326
def __init__(self, dtype: torch.dtype = torch.float):
2427
groups = 1

backends/xnnpack/test/ops/test_conv2d.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -170,6 +170,9 @@ def get_inputs(self):
170170

171171

172172
class TestConv2d(unittest.TestCase):
173+
def setUp(self):
174+
torch._dynamo.reset()
175+
173176
def _test(
174177
self,
175178
m: torch.nn.Module,

backends/xnnpack/test/ops/test_div.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,9 @@
1111

1212

1313
class TestDiv(unittest.TestCase):
14+
def setUp(self):
15+
torch._dynamo.reset()
16+
1417
class Div(torch.nn.Module):
1518
def __init__(self):
1619
super().__init__()

backends/xnnpack/test/ops/test_elu.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,9 @@
1111

1212

1313
class TestElu(unittest.TestCase):
14+
def setUp(self):
15+
torch._dynamo.reset()
16+
1417
class ELU(torch.nn.Module):
1518
def __init__(self):
1619
super().__init__()

backends/xnnpack/test/ops/test_floor.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,9 @@
1111

1212

1313
class TestFloor(unittest.TestCase):
14+
def setUp(self):
15+
torch._dynamo.reset()
16+
1417
class Floor(torch.nn.Module):
1518
def __init__(self):
1619
super().__init__()

backends/xnnpack/test/ops/test_hardswish.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,9 @@
1111

1212

1313
class TestHardswish(unittest.TestCase):
14+
def setUp(self):
15+
torch._dynamo.reset()
16+
1417
class Hardswish(torch.nn.Module):
1518
def __init__(self):
1619
super().__init__()

backends/xnnpack/test/ops/test_hardtanh.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,9 @@
1111

1212

1313
class TestHardTanh(unittest.TestCase):
14+
def setUp(self):
15+
torch._dynamo.reset()
16+
1417
class HardTanh(torch.nn.Module):
1518
def __init__(self, min_val=-1.0, max_val=1.0):
1619
super().__init__()

backends/xnnpack/test/ops/test_leaky_relu.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,9 @@
1111

1212

1313
class TestLeakyRelu(unittest.TestCase):
14+
def setUp(self):
15+
torch._dynamo.reset()
16+
1417
class LeakyReLU(torch.nn.Module):
1518
def __init__(self, **kwargs):
1619
super().__init__()

backends/xnnpack/test/ops/test_linear.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -219,6 +219,9 @@ class TestLinear(unittest.TestCase):
219219
should produce strictly better results compared to Per-Tensor Quantization
220220
"""
221221

222+
def setUp(self):
223+
torch._dynamo.reset()
224+
222225
@staticmethod
223226
def _get_4b_dqconfig() -> QuantizationConfig:
224227
# Returns a QuantizationConfig for 4b dynamic quantization for XNNPACK.

backends/xnnpack/test/ops/test_lstm.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,9 @@
1414

1515

1616
class TestLSTM(unittest.TestCase):
17+
def setUp(self):
18+
torch._dynamo.reset()
19+
1720
class LSTMLinear(torch.nn.Module):
1821
def __init__(self, input_size, hidden_size, out_size):
1922
super().__init__()

backends/xnnpack/test/ops/test_max_dim.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,9 @@
1111

1212

1313
class TestMaxDim(unittest.TestCase):
14+
def setUp(self):
15+
torch._dynamo.reset()
16+
1417
class Max(torch.nn.Module):
1518
def forward(self, x):
1619
max_values_1, max_indices_1 = torch.max(x, dim=2, keepdim=True)

backends/xnnpack/test/ops/test_maximum.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,9 @@
1111

1212

1313
class TestMaximum(unittest.TestCase):
14+
def setUp(self):
15+
torch._dynamo.reset()
16+
1417
class Maximum(torch.nn.Module):
1518
def __init__(self):
1619
super().__init__()

backends/xnnpack/test/ops/test_maxpool2d.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,9 @@
1515

1616

1717
class TestMaxPool2d(unittest.TestCase):
18+
def setUp(self):
19+
torch._dynamo.reset()
20+
1821
class MaxPool2d(torch.nn.Module):
1922
def __init__(self, kernel_size=3, stride=1, padding=0, dilation=1):
2023
super().__init__()

backends/xnnpack/test/ops/test_mean_dim.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,9 @@
1111

1212

1313
class TestMeanDim(unittest.TestCase):
14+
def setUp(self):
15+
torch._dynamo.reset()
16+
1417
class MeanDim(torch.nn.Module):
1518
def __init__(self, dims):
1619
super().__init__()

backends/xnnpack/test/ops/test_minimum.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,9 @@
1111

1212

1313
class TestMinimum(unittest.TestCase):
14+
def setUp(self):
15+
torch._dynamo.reset()
16+
1417
class Minimum(torch.nn.Module):
1518
def __init__(self):
1619
super().__init__()

backends/xnnpack/test/ops/test_multiply.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,9 @@
1111

1212

1313
class TestMul(unittest.TestCase):
14+
def setUp(self):
15+
torch._dynamo.reset()
16+
1417
class Mul(torch.nn.Module):
1518
def forward(self, x, y):
1619
z = x * y

backends/xnnpack/test/ops/test_negate.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,9 @@
1111

1212

1313
class TestNegate(unittest.TestCase):
14+
def setUp(self):
15+
torch._dynamo.reset()
16+
1417
class Negate(torch.nn.Module):
1518
def __init__(self):
1619
super().__init__()

0 commit comments

Comments
 (0)