What is New in Dinamica EGO 5

(See the changelog specific for version 5.2.0 and version 5.2.1)

Execution

  • The parallel execution system was rebuilt from scratch making this the fastest Dinamica EGO ever! Now, the parallel execution uses a fixed number of execution threads (called workers) with task stealing to provide load balancing and increase the flexibility of how parallel tasks can be designed. In theory, all model components can run in parallel:
    • Independent functors run in parallel;
    • Independent loop steps run in parallel;
    • Different pieces of a map are loaded in parallel.
    • Individual settings in the Execution tab of the Options dialog controls how parallel execution works.
  • Thousands of internal optimizations.
  • Now images are manipulated in parallel even when they are too big to fit in memory.
  • Additional new options to control how memory allocation for maps works.
  • [EXPERIMENTAL] Certain functors can have their execution accelerated using GPUs (called accelerators). The use of Nvidia and AMD GPU card models released after 2016 is advised.

Internationalization

  • Now it is possible to provided file paths, and also comments and alias for functors in almost any language. The graphical interface itself is still available only in English, though.

Integration

  • Improved integration with R: It is now possible to install packages even if R is being provided by the Enhancement Plugin. Just replace the typical import statement 'library (NAME)' with 'dinamicaPackage(“NAME”)' when importing packages from your scripts. By doing so, packages will be automatically downloaded and installed, if necessary. An option in the Tools→Options dialog defines the mirror repository from where R packages are downloaded by Dinamica EGO.
  • Integration with Python: Python can now be used to create functors, via Calculate Python Expression as part of the models. It is now possible to install packages by using 'dinamica.package(“NAME”)' when importing packages. Similarly how it works for R, Python packages will be automatically downloaded and installed from the PIP repository, if necessary. Packages can also be installed from custom locations. And unlike R, the Python interpreter is deployed with Dinamica EGO, so it is possible to use Python to create functors out of the box.

Portable

  • Windows version of Dinamica EGO can now be used without having to be installed (portable version). However, the full installer is still recommended for easier deployment and for a better overall experience.

Submodels

  • Submodels and functors can now be nested with multiple levels in the Functor Library tree.
  • Submodels can place inputs in custom tabs (other than the default or advanced tabs) in the Functor Editor dialog.
  • Submodels are loaded “lazily” when the application starts. As the result, Dinamica tends to initialize very quickly, even when dozen of submodels are installed.

Miscelaneas

  • More uniform settings (variables and registry). Most settings can be overridden using an environment variable for convenience.
  • Virtualization Off is no longer available.
  • New command line tool.
  • Thousands of bug fixes.

Platform

  • Dinamica EGO 5 is 64-bit only application.
  • Compiled using the latest compilers.
  • Available for Windows, Linux and Mac.