iut-ibk / DynaMind-ToolBox

DynaMind-ToolBox
www.dance4water.org
GNU General Public License v2.0
9 stars 6 forks source link

Simulation waits to execute modules in loop group #195

Closed christianurich closed 11 years ago

christianurich commented 11 years ago

See screenshot. The simulation seems to follow the main data stream and is waiting to execute modules that are not. When I now add export modules to the datastream to debug stuff I have to wait especially in big simulations quite long (30mins) until the modules in the loop are executed. Please change that all modules in groups are executed before the simulation continues.

screen shot 2013-08-10 at 10 30 15 am

zacharias2k commented 11 years ago

Following a stream of non-successor states usually gives the best performance as it avoids cache-misses. But of course this loop behaviour is not only bad, it also causes data loss. I fixed this by prioritizing the inner group modules. https://github.com/iut-ibk/DynaMind/commit/c20b73d66cfbd91d1b1b10687c94ce9ead31bc6a I leave this thread open, as there may be another bug with in-group-starting modules.

zacharias2k commented 11 years ago

I've redone it again, changing to a domain-executing behaviour. This was necessary to avoid leaks when dealing with dead ends on the inport (no into-group-link) as well as crashes with some impossible simulation structures. https://github.com/iut-ibk/DynaMind/commit/c11177a27310aac683c9749638657223dddfb20f