Skip to content

Commit a14d27d

Browse files
JakeStevensfacebook-github-bot
authored andcommitted
Remove _use_edge_ops=False (#20909)
Summary: Support for _use_edge_ops=False has been marked for removal for awhile. This PR finalizes it. Preceeding PRs have removed all OSS usages of it in-tree. Reviewed By: rascani Differential Revision: D111926304
1 parent c995192 commit a14d27d

5 files changed

Lines changed: 12 additions & 62 deletions

File tree

devtools/etrecord/tests/etrecord_test.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1201,7 +1201,7 @@ def test_add_edge_dialect_program_already_exists_exception(self):
12011201
edge_output2 = to_edge(
12021202
export(f2, f2.get_random_inputs(), strict=True),
12031203
compile_config=exir.EdgeCompileConfig(
1204-
_check_ir_validity=False, _use_edge_ops=False
1204+
_check_ir_validity=False,
12051205
),
12061206
)
12071207

exir/capture/_config.py

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -38,8 +38,6 @@ class CaptureConfig:
3838
class EdgeCompileConfig:
3939
# TODO(qihan): remove ability to opt out
4040
_check_ir_validity: bool = True
41-
# TODO(larryliu): remove this
42-
_use_edge_ops: bool = True
4341
# TODO(gasoonjia): remove this
4442
_skip_dim_order: bool = False
4543
# Allow core ATen ops check to be skipped for certain ops, but continue with the rest of the checks.

exir/program/_program.py

Lines changed: 8 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -688,14 +688,13 @@ def _to_edge(ep, config: EdgeCompileConfig) -> "ExirExportedProgram":
688688
new_ep.exported_program = lift_constant_tensor_pass(new_ep.exported_program)
689689

690690
new_gm = new_ep.exported_program.graph_module
691-
if config._use_edge_ops:
692-
new_gm_res = OpReplacePass()(new_gm)
691+
new_gm_res = OpReplacePass()(new_gm)
692+
assert new_gm_res is not None
693+
new_gm = new_gm_res.graph_module
694+
if not config._skip_dim_order:
695+
new_gm_res = MemoryFormatOpsPass()(new_gm)
693696
assert new_gm_res is not None
694697
new_gm = new_gm_res.graph_module
695-
if not config._skip_dim_order:
696-
new_gm_res = MemoryFormatOpsPass()(new_gm)
697-
assert new_gm_res is not None
698-
new_gm = new_gm_res.graph_module
699698

700699
for p in post_op_replace_passes:
701700
new_gm_res = p(new_gm)
@@ -824,10 +823,9 @@ def _generate_edge_program(
824823
ReplaceViewOpsWithViewCopyOpsPass(),
825824
]
826825
passes.extend(pre_op_replace_passes)
827-
if config._use_edge_ops:
828-
passes.append(OpReplacePass())
829-
if not config._skip_dim_order:
830-
passes.append(MemoryFormatOpsPass())
826+
passes.append(OpReplacePass())
827+
if not config._skip_dim_order:
828+
passes.append(MemoryFormatOpsPass())
831829

832830
gm = program.graph_module
833831
for p in passes:

exir/verification/test/test_verifier.py

Lines changed: 0 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -38,46 +38,6 @@ def test_edge_verifier_check_valid_op_succeed_given_custom_op(self) -> None:
3838
verifier.check_valid_edge_op(edge_op)
3939
verifier.check_valid_op(edge_op)
4040

41-
def test_edge_verifier_check_edge_op(self) -> None:
42-
class Model(torch.nn.Module):
43-
def __init__(self):
44-
super().__init__()
45-
46-
def forward(self, x: torch.Tensor) -> torch.Tensor:
47-
return x.transpose(0, 1)
48-
49-
m = Model().eval()
50-
51-
example_input = (torch.zeros([2, 2]),)
52-
53-
export_model = export(m, example_input, strict=True)
54-
55-
compile_config_without_edge_op = EdgeCompileConfig(
56-
_use_edge_ops=False, _skip_dim_order=False
57-
)
58-
59-
edge_manager = to_edge(
60-
export_model, compile_config=compile_config_without_edge_op
61-
)
62-
63-
normal_verifier = EXIREdgeDialectVerifier()
64-
disable_edge_op_check_verifier = EXIREdgeDialectVerifier(
65-
compile_config_without_edge_op
66-
)
67-
68-
# exported model can not pass normal verifier due to
69-
# incontiguous memory layout tensor is not supported in ET
70-
with self.assertRaises(SpecViolationError):
71-
normal_verifier(edge_manager.exported_program())
72-
73-
# exported model can pass disable_edge_op_check_verifier due to the
74-
# incontiguous memory layout tensor verification is disabled by
75-
# compile_config_without_edge_op (_use_edge_ops=False). Noted that this
76-
# verifation has been done when calling `to_edge`. Explicitly calling
77-
# verifier here just for better demonstration and is unnecessary
78-
# in real world for ir verification.
79-
disable_edge_op_check_verifier(edge_manager.exported_program())
80-
8141
def test_edge_verifier_check_valid_dim_order_graph(self) -> None:
8242
class Model(torch.nn.Module):
8343
def __init__(self):

exir/verification/verifier.py

Lines changed: 3 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -263,7 +263,6 @@ def __init__(self) -> None:
263263
_edge_compile_config = edge_compile_config or EdgeCompileConfig()
264264

265265
self.enable = _edge_compile_config._check_ir_validity
266-
self.check_edge_ops = _edge_compile_config._use_edge_ops
267266
self.use_dim_order = not _edge_compile_config._skip_dim_order
268267

269268
self._core_aten_ops_exception_list = _core_aten_ops_exception_list
@@ -274,11 +273,7 @@ def __init__(self) -> None:
274273
preserve_ops=_preserve_ops,
275274
)
276275
self.check_valid_aten_op = self.aten_op_verifier.check_valid_op
277-
278-
if self.check_edge_ops:
279-
self.check_valid_op = self.check_valid_edge_op
280-
else:
281-
self.check_valid_op = self.check_valid_aten_op
276+
self.check_valid_op = self.check_valid_edge_op
282277

283278
def allowed_getattr_types(self) -> Tuple[Type[Any], ...]:
284279
return (
@@ -319,9 +314,8 @@ def check_valid_edge_op(self, op):
319314
def check_additional(self, gm: GraphModule) -> None:
320315
if not self.enable:
321316
return
322-
if self.check_edge_ops:
323-
_check_tensors_are_contiguous(gm)
324-
_check_tensor_args_matching_op_allowed_dtype(gm)
317+
_check_tensors_are_contiguous(gm)
318+
_check_tensor_args_matching_op_allowed_dtype(gm)
325319

326320
def is_valid(self, gm: GraphModule) -> bool:
327321
try:

0 commit comments

Comments
 (0)