General tips about performance when you use File Manager functions

The following tips are provided as a guide to improving performance when using File Manager functions:
  • Reading sequential input files with DFSORT
    • For the best overall File Manager product performance, it is strongly recommended, for all File Manager installations, that DFSORT be made available to File Manager so that it can use DFSORT I/O technology. For details, see the File Manager for z/OS Customization Guide.
      Note: It is not necessary for you to have a DFSORT license in order for File Manager to use DFSORT technology.
    • DFSORT technology can be used by File Manager in interactive operations such as certain File Manager edit and browse scenarios. It can also be used by File Manager for both interactive and batch executions of the File Manager utilities, Data Set Copy (DSC) and Data Set Print (DSP).
    • For the DSC and DSP utilities, File Manager attempts to use DFSORT technology when reading:
      • Sequential (DSORG=PS) data sets.
      • A VSAM file, provided there are FASTPROC (DFSORT) commands in the user PROC. If there is no user PROC, or the PROC contains no FASTPROC statements, File Manager uses its own VSAM I/O.
    • For DSC, when File Manager chooses to use DFSORT technology to read an input file, it may also use DFSORT to write the primary output data set.
    • Development measurements show that File Manager using DFSORT technology can reduce sequential (DSORG=PS) I/O (EXCPs) by two orders of magnitude. File Manager using DFSORT technology can also significantly reduce CPU utilization, compared to File Manager without access to DFSORT technology. Both I/O and CPU performance gains are greatest in the simplest situations where little or no special File Manager processing is required. The CPU gains can also be significant when all, or a large portion, of any record reformatting or other work can be done by DFSORT using FASTPROC (DFSORT) commands.
    • File Manager can use DFSORT technology even if it needs to process individual records, such as when using a PROC or a template or copybook. However, some things can prevent File Manager from using DFSORT I/O technology on a particular sequential input file:
      • An IO exit is being used on the input data set.
      • The input data set:
        • Is a concatenated data set with unlike attributes.
        • Is an LRECL=X data set.
        • Is a HFS file.
        • Contains records of undefined length (RECFM=U).
        • Is being processed with a template that contains segmented records.
        File Manager makes the determination about DFSORT use based on the above conditions and other factors which may affect performance. Note that, under some conditions (with tape data sets), File Manager may not be able to detect unlike data set attributes and still invoke DFSORT for copy processing. Such invocation may fail since DFSORT does not allow for unlike concatenation of data sets. In such cases, you can disable DFSORT with the NOSORT function to allow for successful processing of concatenated datasets with unlike attributes.
    • It is possible to directly control DFSORT processing using DFSORT commands in a File Manager PROC. For details, see the documentation on FASTPROC in Coding DFSORT procedure statements. It can be worth using this feature when very high performance is required. DFSORT can perform operations with high efficiency before File Manager processes the data records, or in some cases without File Manager processing any data records at all. The main cost to you, the user, is learning and using another syntax for DFSORT commands.
  • Use the FASTREXX subset of REXX

    If a user PROC is required, it is strongly recommended that, rather than the full REXX language, the FASTREXX subset of REXX is used. File Manager provides a set of external REXX functions designed to allow many common tasks to be performed within the FASTREXX subset. See Enhancing File Manager processing for a discussion of FASTREXX, and External REXX functions.

  • Template and copybook processing

    Several functions, including BTB, PBK, and many of the Data Set functions (DS*), allow template or copybook processing. When using these functions, consider the following performance-related points:

    • File Manager can be most efficient if a template is used instead of a copybook.
    • If a copybook must be used, for best performance specify the copybook language explicitly (LANG=COBOL, LANG=PLI, or LANG=HLASM).
    • Template expressions should be written, if at all possible, using expressions suitable for File Manager internal processing. For more details, see Improving performance using internal expression processing.