Profiling system resource use

Most SMF records contain general identification fields such as the job name, step name, programmer name, reader start time, and reader start date. By sorting and summarizing SMF data according to these types of fields, an installation can create reports or profiles that show each batch job, job step, and TSO/E session's use of system resources such as:

CPU time use

SMF accumulates the job/step CPU time in two separate fields of each job/step termination record: processing time under TCBs and processing time under SRBs. (CPU Time includes a list of the different times that are included and those that are excluded for these CPU time fields). An installation might want to summarize these time fields by program name over a given interval to compare each program's SRB time with its total CPU time. This summary might identify programs that have excessive interrupt processing.

In addition to CPU time, SMF reports many different times relating to job, job step, APPC/MVS transaction program, and TSO/E session processing including:
  • Job/step/TSO/E session/ APPC/MVS work start and stop times
  • Job/step/TSO/E session elapsed (turnaround) time
  • Device allocation start time
  • Problem program start time
  • Initiator selection time
  • TSO/E logon enqueue time
  • Reader start and stop times
  • Converter start and stop times
  • Run processor start and stop times
  • Output processor start and stop times

By examining these time fields, an installation can profile each job's flow through the system. Such a profile might identify jobs that have abnormally long wait times. These jobs are usually good candidates for further detailed examination. An installation might want to use these time fields to determine which jobs are running on the system at the same time.

Storage use and paging activity

The RMF™ paging activity record (type 71) is written for specified measurement intervals. It contains information about the demands made on the system paging facilities and the use of real and auxiliary storage including. For example: the number of:
  • Non-VIO page-ins and page-outs
  • Swap-ins and swap-outs
  • Address space swap sequences
  • VIO page-ins and page-outs

An installation can calculate the system paging rate for each specified interval by dividing the number of page-ins and page-outs by the interval's CPU time. By plotting several paging rates over time, an installation can correlate its workload with its real storage capacity.

SMF reports the following information on storage use and paging activity for each job step and TSO/E session:
  • Amount of contiguous real storage reserved for a program specifying ADDRSPC=REAL
  • Storage used from the top of the private area (includes the LSQA and the SWA)
  • Storage used from the bottom of the private area (includes subpools 0-127, 129-132, 244, 251, and 252)
  • Number of non-VIO page-ins and page-outs
  • Number of swap-ins and swap-outs
  • Number of address space swap sequences
  • Number of VIO page-ins and page-outs

An installation can use the SMF field “storage used from the bottom of the private area”, along with the paging statistics for the address space, to estimate a job's use of real storage.

I/O activity

Several SMF records contain useful information about a job, job step, or TSO/E session's I/O activity. For example, the step termination records contain device entries that include the device class, unit type, channel/unit address, and EXCP count. An installation might want to use these SMF fields to isolate those job steps whose I/O activity exceeded certain limits, for example:
  • More than a given percentage of the I/O activity was on a certain unit
  • More than a given percentage of the I/O activity was on a certain channel path
  • More than a given number of data sets on the same direct access volume each had a significantly large number of EXCPs

Service activity

An installation can use the SMF termination records to report the number of service units, transaction active time, and performance group number for each job step and TSO/E session. By comparing this information with the information reported in the RMF workload records (type 72), an installation can calculate the percentage of the total system services that it gives to particular performance groups. Such a comparison might be helpful in determining whether service is being distributed according to the goals of the installation. (See z/OS MVS Initialization and Tuning Guide for more information on service, transaction active time, and performance group numbers.)

Programming language use

SMF type 4, 30, and 34 records contain the name of the program used (taken from the PGM= parameter on the EXEC statement). By sorting these records by program name, an installation can determine to what extent users are compiling in various programming languages, such as PL/1, COBOL, and FORTRAN.

Similarly, an installation can produce reports for specific job categories or installation departments by using key program names such as SORTJOBS, PAYROLL, and STANDRDS. By assigning unique step names and evaluating the SMF step termination records (which report those names), an installation can produce reports for each step in a cataloged procedure.