dace icon indicating copy to clipboard operation
dace copied to clipboard

Add map split transformation

Open luigifusco opened this issue 1 year ago • 0 comments

I don't like the name too much, maybe someone has a better idea.

This transformation covers some cases found in climate codes where the range of a nested map changes on the first and/or the last iteration of an outer map. The resulting SDFG has a map with a nested sdfg, where multiple states are needed to calculate the correct inner range, preventing map collapse.

The transformation will look for such a pattern and split the map accordingly, in order to simplify the nested SDFG that can be later inlined after simplification (atm covering only a simple equality when detecting the condition, and peeling only one iteration).

Note that due to a bug, the resulting SDFG is wrong. The python-frontend-dealias-integration solves the bug.

example before: image

after: image

after simplify: image

luigifusco avatar Sep 12 '24 14:09 luigifusco