spcl / dace

DaCe - Data Centric Parallel Programming
http://dace.is/fast
BSD 3-Clause "New" or "Revised" License
487 stars 121 forks source link

Implement conditional region #1617

Open luca-patrignani opened 1 month ago

luca-patrignani commented 1 month ago

This PR is part of my GSoC project. This implement ConditionalRegion, a block (not a ControlFlowRegion) which has a property branches which is a list of tuple (condition, control flow region).

Needs confirmation

phschaad commented 2 weeks ago

@luca-patrignani It appears that at least one of the test cases does not terminate when automatic simplification is turned off. This is something we've encountered in the past, specifically with loop regions. The driver of the issue there was that control flow detection got confused by extraneous states (introduced through inlining) and consequently generated infinite goto-loops. Can you verify that this is again the culprit? The issue last time was in these tests: https://github.com/spcl/dace/blob/master/tests/python_frontend/loops_test.py