This is an old revision of the document!

PHP's gd library is missing or unable to create PNG images

Useful Tips

Increasing Performance

To maximize the performance of Dinamica EGO execution, follow the guidelines below:

  • Make sure the GUI option “Tools → Options | Advanced | Detect the number of processors available” is selected. If you are running your models using the Console Launcher Tool, make sure the “Processors” option for each model is set to 0.
  • If you have enough RAM memory, make sure the GUI option “Tools → Options | Advanced | Disable raster map swapping” is checked. On the Console Launcher Tool, check the Disable map swapping option. It will force EGO to use memory (not the hard disc) to do most calculations. It also allows the use of parallel algorithms by several operators. Beware of memory limits whether you are using a Windows XP/Vista/7 32 bit SO.
  • Make sure the “MinGW for Dinamica EGO” extension is installed and the GUI option “Tools → Options | Advanced | Disable native expression compilation” is unchecked. On the Console Launcher, uncheck “Disable expression compilation”.
  • Make sure the GUI option “Tools → Options | General | Main level” is set to Result. This is really important when running models with lots of loop containers like Repeat, While, For etc.
  • Avoid the definition of maps using cell type “1 Bit Integer”. This cell type saves memory, but it also has a huge negative impact in performance.
  • Keep updated the Dinamica EGO installed in your system.

File Paths

The Dinamica EGO interface shows absolute filepaths for easier reading, but they are relative indeed. So, to easily change the location of a model, keep the same path between the script file (ego or xml) and your data directory. This will work as expected.

Another way is to use the Workdir functor where you set a working directory and every Load and Save functors inside it will be relative to the directory you have set. You can use several Workdir in a the same model. See the example located in the folder Examples\run_lucc_northern_mato_grosso\run_roads_with_comments_and_workdirs of the Dinamica examples.

Saving Model Backups

You can use the following procedure to minimize the possibility of a model loss during the development:

Edit “Tools → Options | General | Model Backup” and check “Also save a backup upon saving a model”. Then, chose a “Backup Folder” where Dinamica EGO will place all model copies. If you leave this field empty, the model copy will be placed in the same folder where the original model is being stored.

After you configure this option, an additional copy of the model will be saved in the corresponding folder every time you click “Save” or “Save As”. If you want to restore the model to a previous state, just open the backup file using Dinamica EGO and use “Save As” to write the file back to its original location. Beware that you can not simply copy the file, otherwise all model inputs and outputs will point to the wrong folder.

Loading Files from Zip Files

Maps, tables, lookup tables and Weights of Evidence files can be loaded from zip files.

Zip files are useful to pack all files used by a model in a single archive. However, zipping all files does not increase the amount of data that Dinamica EGO can handle simultaneously. Behind the curtains, Dinamica unzips the files into a temporary folder and loads them from there.

Zip files also limited to 4 GBytes in Dinamica. If you use a file outside the zip archive, these files can be much bigger than that.

To read a file located in a zip file, you have to use a Workdir container. Then, edit the Workdir and use the zip file name in the “folder” input port. Place a file loader (Load Map, Load Weights etc) inside the Workdir container. The file name mentioned in the file loader must match the name used by the file contained in the zip archive.

The example run_lucc_northern_mato_grosso/run_roads_with_and_workdirs, available as part of the Dinamica EGO installation, reads its inputs from a zip file. Check it out to see how that works in practice.