HELPLIB.HLB  —  MERGE  /STATISTICS
    Displays a statistical summary that can be used for optimization.

    High-performance Sort/Merge: The high-performance Sort/Merge
    utility suppports only the following statistics: Records read,
    Records sorted, Records output, and Input record length.

    Format

      /STATISTICS

1  –  Full Description

    When the /STATISTICS qualifier is used, Sort/Merge displays
    statistics in SYS$OUTPUT. You can use these statistics to
    judge the efficiency of the ordering operation and to determine
    adjustments that can improve its performance. To save these
    statistics in a file, specify the following command:

    $ DEFINE/USER SYS$ERROR output-file

    High-performance Sort/Merge: The high-performance Sort/Merge
    utility displays only the following statistics: Records read,
    Records sorted, Records output, and Input record length.

    The following statistical display results when you use the
    /STATISTICS qualifier:

                  OpenVMS Sort/Merge Statistics

 Records read:        nnn             Input record length:       nnn
 Records sorted:      nnn             Internal length:           nnn
 Records output:      nnn             Output record length:      nnn
 Working set extent:  nnn             Sort tree size:            nnn
 Virtual memory:      nnn             Number of initial runs:    nnn
 Direct I/O:          nnn             Maximum merge order:       nnn
 Buffered I/O:        nnn             Number of merge passes:    nnn
 Page faults:         nnn             Work file allocation:      nnn
 Elapsed time: nn:nn:nn.nn            Elapsed CPU:       nn:nn:nn.nn

    Records read is the number of records read by Sort or Merge.

    Records sorted is the number of records that have been processed
    using Sort. This number could be less than the number of records
    read if a specification file is used to select only certain
    records for the sort or merge operation.

    Records output is the number of records written to the output
    file. This number could be less than the number of records sorted
    if /NODUPLICATES was selected or if I/O errors occurred when the
    output records were being written.

    Working set extent shows the number of pages in the process
    working set extent. This value is used as an upper limit on the
    size of the sort data structure. Adjusting this value is one way
    to improve the efficiency of a sort operation.

    Virtual memory is the number of pages of virtual memory added to
    the Sort image to hold the data.

    The total of the direct I/O and buffered I/O is the number of
    I/O movements needed to read and write data. The lower this total
    value is, the more efficient the ordering operation.

    The number of page faults indicates how well the data fits into
    memory: the higher the number of page faults, the less efficient
    the ordering operation.

    Elapsed time is the total wall clock time used by the sort or
    merge operation in hours, minutes, seconds, and hundredths of
    seconds.

    The input record length value is obtained from the Record
    Management Services (OpenVMS RMS) unless the user supplies it.

    Internal length is the size in bytes of an internal format node.
    This includes any keys, data, a word to store the length, record
    file addresses (RFAs), and converted keys.

    Output record length is the length of the output record. The
    length is computed from the input record length, the sort
    process, and the record reformatting requested.

    Sort tree size is the number of records that fit in sort's
    internal data structure.

    Number of initial runs is one indication of how well the data
    fits into memory.

    The maximum merge order is the maximum number of sorted strings
    that are merged at one time.

    The number of merge passes is the number of times the Sort
    utility merges strings until one sorted output string is
    produced. The number of initial runs and the number of merge
    passes indicate how well the data fits in memory. The higher
    these numbers, the further the working set size is from
    containing the data and the longer the sorting takes.

    Work file allocation is the number of blocks used for the work
    files. When more than one merge pass is needed, this size is
    approximately twice the size of the input file allocation.

    Elapsed CPU is the CPU time used by the ordering operation;
    it does not include time spent waiting for I/O operations to
    complete or time spent waiting while another process executes.

2  –  Example

  $ SORT/STATISTICS PRICE1.DAT,PRICE2.DAT PRICE.LIS

      This SORT command results in the following statistical display:

                   OpenVMS Sort/Merge Statistics

 Records read:         793          Input record length:       80
 Records sorted:       793          Internal length:           80
 Records output:       793          Output record length:      80
 Working set extent:   100          Sort tree size:           412
 Virtual memory:       433          Number of initial runs:     2
 Direct I/O:            22          Maximum merge order:        2
 Buffered I/O:           9          Number of merge passes:     1
 Page faults:         3418          Work file allocation:     114
 Elapsed time: 00:00:05.98          Elapsed CPU:      00:00:03.63

      In the sample statistics display, the Sort data structure
      size is limited by the small working set extent. By doubling
      the working set extent you can almost double the Sort data
      structure size, enabling all the records to fit in memory
      without using work files.
Close Help