Eloquence Language Manual

15 Statement Flow Analyser

The SFA (Statement Flow Analyser) gives you the ability to analyse your application. You can find out which parts of your application are executed and how often, and how much time the execution took. So on the one hand you can check what parts of your application were executed in a test, on the other hand you can receive information about run time behaviour of your application.

The SFA consists of two programs: sfagen and sfarpt.

The sfagen program must be run first. It generates empty SFA files for all program files you want to analyse. Then start eloq -sfa with the required options, and the files will be filled.

The first analysis type is a file report. This lists what program was started, how often it was executed and how much time it used. The analysis can be done using wildcards, so that it is possible to analyse a specific application (e.g. Fibu).

To use an SFA analysis you must start Eloquence with the -sfa option and the name of the program. An analysis is not possible in the development version.


sfarpt -f AC*

All programs beginning with AC are to be analysed.

From all programs selected a histogram is created which shows what portion of the elapsed time each program took.

The second analysis type is the segment report. This lists which segments (parts of program) were executed and how much elpased time was used.


sfarpt -s AC* YSUBR.SFA

All programs beginning with AC, plus the program named YSUBR are to be analysed.

The third type is a line report. This analyses one program a line at a time. It shows how often this line was executed and how much time was used for it. The program distinguishes between individual segments. A segment can be a program, a SUB or an FN. Here too a histogram is created showing which program line in the segment used the most time.


sfarpt -l 0.5 YSUBR.SFA

YSUBR is to be analysed. Lines whose portion of the elapsed time is less than 0.5% are to be ignored.


sfarpt -g 0 YSUBR.SFA

List all lines which were not executed.

Chapter contents:


Eloquence Language Manual - 19 DEC 2002