Understanding the script profile

The script profile contains five sections. The first includes information about scripts. The next three sections include information about accessing tables in the database. The last section contains information about the script cache.

Script information

The script information section describes the performance of scripts in your application. Each line in the section describes a script that was accessed in your application while the Script Profiler was on.

Type   A “P” in this column indicates that the script is a procedure or a form-level procedure. An “F” in this column indicates that the script is a function or a form-level function.

Name   This column displays the name of the script.

Count   This column displays the number of times the script was accessed while the profiler was on.

Time in   This column displays the amount of time spent running the script.

+Children   This column displays the amount of time spent running the script plus the amount of time spent in any procedures or functions called by the script. The scripts are sorted according the values in this column.

Minimum   This column displays the shortest completion time recorded for the script during the profile session.

Maximum   This column displays the longest completion time recorded for the script during the profile session.

The time values shown in the profile are derived from the operating system. The actual time represented by these numbers will vary between operating environments, and is affected by a number of system settings. The numbers are best viewed as relative indicators of the amount of time spent in each script.


Database Information

This section displays information about tables that were accessed while the profiler was on. Three categories are listed:

Number of operations   This category lists the number of specific table operations that were performed on each table.

Average time per operation   This category lists the average time required to perform each specific table operation for each table. The times are listed in milliseconds.

Total time per operation   This category lists the total time required to perform each specific table operation for each table. It also lists the total time spent for operations on each table and the total time for all tables. The times are listed in seconds.

Information is logged for the following table operations:

Table Name   These columns display the name of each table for which information was logged.

Read Single   These columns display the number of times individual records were read from each table, and the average and total times to read individual records.

Read Next   These columns display the number of times a get next or change next statement was used to read a record from each table, and the average and total times for these operations.

Read First   These columns display the number of times a get first or change first statement was used to read a record from each table, and the average and total times for these operations.

Read Other   These columns display the number of times any other type of command read a record from each table, and the average and total times for these operations. Commands such as get previous, get last and countrecords() are logged in this column.

Insert   These columns display the number of times a new record was inserted into each table using the save table statement, and the average and total times for these operations.

Update   These columns display the number of times an existing record in each table was changed and saved using the save table statement, and the average and total times for these operations.

Single Remove   These columns display the number of times a remove statement was used to remove a record from each table, and the average and total times for these operations.

Range Remove   These columns display the number of times a remove range statement was used to remove a range of records from the table, and the average and total times for these operations.

Range Sum   These columns display the number of times a sum range statement was used to sum the numeric fields for each table, and the average and total time for these operations.

Script cache

The last section of the script profile describes the performance of the script cache. It lists the number of procedures, form-level procedures, functions, and form-level functions that were executed. It also lists the number of “hits” or times the procedure or function was read from the cache. The hit rate percentage is also calculated. This is the ratio of the number of hits and the total number of calls.

The script cache is cleared only when you recompile a script in the application. This means that if a script was run in a previous test mode session, it may not have to be reloaded when it is executed. This will distort the cache hit rate to appear higher than it actually is. If you are doing benchmarking or performance tuning, we recommend that you quit Dexterity and restart the application so you see accurate values for the cache.


 


Documentation Feedback