Skip to content

Commit c1a3422

Browse files
committed
simplify SDFG freezing
1 parent 650c748 commit c1a3422

File tree

1 file changed

+4
-10
lines changed

1 file changed

+4
-10
lines changed

src/gt4py/cartesian/backend/dace_backend.py

Lines changed: 4 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -267,16 +267,10 @@ def freeze_origin_domain_sdfg(
267267
wrapper_sdfg = SDFG("frozen_" + inner_sdfg.name)
268268
state = wrapper_sdfg.add_state("frozen_" + inner_sdfg.name + "_state")
269269

270-
inputs = set()
271-
outputs = set()
272-
for node, parent in inner_sdfg.all_nodes_recursive():
273-
if not isinstance(node, nodes.AccessNode) or inner_sdfg.arrays[node.data].transient:
274-
continue
275-
276-
if node.has_reads(parent):
277-
inputs.add(node.data)
278-
if node.has_writes(parent):
279-
outputs.add(node.data)
270+
# gather inputs & outputs (i.e. reads/writes without transients)
271+
inputs, outputs = inner_sdfg.read_and_write_sets()
272+
inputs = set(filter(lambda name: not inner_sdfg.arrays[name].transient, inputs))
273+
outputs = set(filter(lambda name: not inner_sdfg.arrays[name].transient, outputs))
280274

281275
# fake DebugInfo to avoid calls to `inspect`
282276
nsdfg = state.add_nested_sdfg(inner_sdfg, inputs, outputs, debuginfo=DebugInfo(123456))

0 commit comments

Comments
 (0)