Description of the profiling information
Describes the information about execution time, memory consumption and model extraction, collected after execution of the model.
When execution stops, the information collected about execution time, memory consumption, and model extraction is organized in tabular form in the Profiler tab.
If the profiler table is empty and the run configuration includes a settings file, first make sure the “Collect profiling information” option is turned on in the Language/General window of the settings editor.
The profiler measures "system time" and not “wall-clock time”. See Processing time vs. user time
The figures shown in the illustrations may be different on your machine.
Each column header is a sort criterion (see Sorting) and there are two icons at the top right of the Profiler tab for the commands Copy contents to clipboard and Customize thresholds. The Description column presents the execution steps in sequential order as a tree. The root item corresponds to the full execution.
profiler example
The Description tree
Most categories below the root item include two important kinds of item, as shown in the table below.
| Execution steps | Notation |
|---|---|
| Script block execution | EXECUTE <block_name> |
| Data initialization | INIT <data_element_name> |
Then, for each execution step, the elements listed in the following table are displayed in columns.
| Information for each execution step | Definition |
|---|---|
| Time | The total time consumed by the task. Note that the profiler measures "system time" and not “wall-clock time”. |
| Percentage of time | ... as a proportion of the total time |
| Peak Memory | The maximal memory used to process the OPL problem. See also the Glossary. |
| Percentage of peak memory | ... as a proportion of the total memory |
| Self time | The time used by the task minus the time used by the subtasks... |
| Percentage of self time | ... as a proportion of the total time |
| Local Memory | The memory usage observed by comparing the start and the end of a step. See also the Glossary. |
| Percentage of local memory | ... as a proportion of the total memory |
| Count | The number of times that same node is repeated on this tree level |
| Nodes | The number of nodes in the branch starting at this node |
Processing time vs. user time
All figures indicated in the Time column are processing times, not user times. This means that if your computer is executing other tasks at the same time or is paging because it has too much memory to handle, these extra times are not taken into account by the profiler.
In other words, the OPL profiler records the user+kernel time (which Microsoft calls the process time) given the following definitions.
| Figures indicated in the processing column | Definition |
|---|---|
| elapsed time | The total elapsed (wall-clock) time required for an operation. This includes time spent waiting for I/O, synchronization objects, timers, scheduling, and other delays. |
| user+kernel time | The amount of time executing code in the thread. It does not include time spent waiting for devices or servicing other processes. |
Sorting
By default, the Profiler table rows are sorted sequentially in the order of execution, as reflected by the Description tree. However, you can sort the table, in ascending or descending order, on the figures of any column by clicking that column header name.
For example, in Figure 2, the figures in the Peak Memory column are sorted in descending order and as a consequence, the Description tree is no longer displayed sequentially. Compare to Figure 1, which shows the default, sequential order.
Click the Description column header to restore the default order.
profiler.mod)
Thresholds
Click the Customize thresholds icon
at the top right of the Profiler tab
to display the sliders.
The Time % threshold and Memory % threshold sliders, at the top of the Output window, enable you to dynamically change the minimum percentage of time or memory above which you want the figures to appear on a blue (time) or pink (memory) background. Compare Figure 3 to Figure 1: more time figures are shown against a blue background when the time threshold is set to 10% and fewer memory figures appear against a pink background when the memory threshold is set to 50%.
The figures shown in the illustrations may be different on your machine.
profiler.mod)
Copying Profiler contents to a clipboard
Click the Copy contents to clipboard icon
at the top right of the Profiler tab to copy the Profiler
table and then paste it to a text editor or spreadsheet. The following
screen shows the Profiler table in Microsoft Excel.

The next step consists in Examining the profiling information.