Factors Affecting Translation Time

I am having problems developing models in which translation time (simulated quickly but takes too long) has become a serious problem and may use some understanding, so I can study this.

So the question is:

What are some of the main factors affecting the translation time of the model and ideas for solving this problem?

For example, things that may have an impact:

  • for loops versus vectorized method - the basic testing model did not seem to affect anything
  • using input vs parameters variables
  • impact of annotations (e.g. Evaluate=true )
  • or difficult luck, it depends on the tool (Dymola, OMEdit, etc.): (
  • the use of many connect() is apparently a factor (possibly primary), as it forces the transliterator to do all the heavy lifting

Any insight is greatly appreciated.

+5
source share
1 answer

Clearly, the answer to this question naturally ended. There are many things to consider when computing time can be a factor.

For distributed models (for example, finite differences), using simple models and then using the connect equations to link them in the appropriate order is not the best way to create models. Experience has shown that this method significantly increases the translation time to an unbearable length. It is better to create distributed models in the same approach that is used in MSL Dynamic pipe (not quite as if it were similar).

Changing the approach, as described, is much faster in translational time (orders of magnitude for larger models,> ~ 100,000 equations) than using connect operators, since the number of distributed elements increases to large numbers. This has been verified using Dymola 2017 and 2017FD01.

The following are some related materials, pointed out by others, that may be useful for more information:

0
source

Source: https://habr.com/ru/post/1263010/


All Articles