Open philip-paul-mueller opened 2 months ago
After I merged master into the new-map-fusion
branch some tests that were previously failing (if the bug described here is fixed) no longer failed, thus in commit 5c49eee66
I removed the check, the tests should now still pass.
It turned out, it does not run, there was an error in the tests/numpy/ufunc_support_test.py::test_ufunc_add_accumulate_simple
test, I forgot about it as it only happens in autoopt mode.
See also commit e1f2bf6 for an example where this behaviour is kicking in.
Prune connectors is one of the transformations that has repeatedly caused problems and I believe is not currently used because of it. Maybe we should deprecate or fix @phschaad ?
Do you mean RefineNestedAccesse
or PruneConnectors
.
My comment about the commit was that now PC was behaving the old way, i.e. should an input connector be pruned or not.
Furthermore as far as I know PC is not run by default and GT4Py depends on it to make inline nested SDFG working.
Prune connectors is one of the transformations that has repeatedly caused problems and I believe is not currently used because of it. Maybe we should deprecate or fix @phschaad ?
If PC is indeed the issue, I would vote for fixing since I understand that it still serves a purpose, but to be honest I am not very familiar with either PC or RNA..
@lukastruemper Has made some fixes to the transformation, he can probably give more insights.
During the implementation of the new MapFusion transformation it became necessary to reimplement
_read_and_write_sets()
there several bugs were discovered and fixed. However, one bug could not be fixed that is related to how the read set is cleaned.If the following patch is applied
then
tests/transformations/move_loop_into_map_test.py::MoveLoopIntoMapTest::test_apply_multiple_times
will fail with an invalid SDFG error. The bug is probably located somewhere insideRefineNestedAccess
.Another error that surfaces is in
tests/numpy/ufunc_support_test.py::test_ufunc_add_accumulate_simple
, however, it only surfaces if the config variablesoptimizer.automatic_simplification
andoptimizer.autooptimize
are set toTrue
.Since the regression test (see below) respect the bug it will also fail, in addition
tests/transformations/move_loop_into_map_test.py::MoveLoopIntoMapTest::test_more_than_a_map
will also fail, because now a transformation, that was previously classified as not applicable, became applicable (actually here I am not sure, but since my regression tests show that the old implementation is not correct, I am pretty positive).