Profile

Top  Previous  Next

This keyword tells GAMS whether to include statement execution time and memory use reporting to the LST file. Numeric input is expected with the allowable numeric values being

 

0no profiling (default)
1minimum profiling

2     profling depth for nested control structures

 

A value of 0 does not cause an execution profile to be generated. A value of 1 reports execution times for each statement and the number of set elements over which the particular statement is executed. A value of 2 reports specific times for statements inside control structures like loops etc.

 

The command is implemented with the syntax

 

Profile=number

 

At the end of the log file a profile summary is created which contains (up to) ten of the 'worst' control structures.

 

Examples:

Running [TRNSPORT] with profile=1 provides the following additional information in the listing file

 

----      1 ExecInit                 0.000     0.000 SECS      3 Mb 

----     44 Assignment c             0.000     0.000 SECS      4 Mb      6

----     65 Solve Init transport     0.000     0.000 SECS      4 Mb 

----     57 Equation   cost          0.000     0.000 SECS      4 Mb      1

----     59 Equation   supply        0.000     0.000 SECS      4 Mb      2

----     61 Equation   demand        0.000     0.000 SECS      4 Mb      3

----     65 Solve Fini transport     0.000     0.000 SECS      4 Mb     19

----     65 GAMS Fini                0.015     0.015 SECS      4 Mb 

----      1 ExecInit                 0.000     0.000 SECS      2 Mb 

----     65 Solve Read transport     0.000     0.000 SECS      2 Mb

----     67 Display                  0.000     0.000 SECS      3 Mb 

----     67 GAMS Fini                0.000     0.000 SECS      3 Mb 

 

The first column provides the line number in the input file of the statement being executed. The second column provides the type of statement being executed.