You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Using the new dusk cli (dawn-ico/dusk#49) the following problem with dawn occurred to me.
Behaviors of these two commands, which should do the same thing before code generation, differ:
Specifically, it seems that the (default) passes run differ between the implementation of dawn-opt and dawn4py.compile.
Compilation is failing in the dawn4py.compile path. This suggest that its set of default passes is wrong.
The text was updated successfully, but these errors were encountered:
Investigating this further i found out that the problem is that the dawn4py.compile path was running pass groups in the defaultPassGroups(): {PassGroup::SetStageName, PassGroup::StageReordering, PassGroup::StageMerger, PassGroup::SetCaches, PassGroup::SetBlockSize}, while the dawn-opt path was just lowering. StageMerger proved to be the problematic one because it generates local variables, not supported by cuda-ico (#1030).
Still it remains that the 2 paths differ substantially in which groups they run and, since one would not expect that to happen, we should uniform them.
Decision taken was to also make dawn-opt run the defaultPassGroups() by default (without passing option --default-opt), to reflect the expectation that usually compilers apply some optimizations by default.
Transforming this into a task.
Using the new dusk cli (dawn-ico/dusk#49) the following problem with dawn occurred to me.
Behaviors of these two commands, which should do the same thing before code generation, differ:
Specifically, it seems that the (default) passes run differ between the implementation of
dawn-opt
anddawn4py.compile
.Compilation is failing in the
dawn4py.compile
path. This suggest that its set of default passes is wrong.The text was updated successfully, but these errors were encountered: