Using Strobe for CA Gen


After your CA Gen application has been installed in the MVS environment, you can measure its performance.

The Using-Strobe-to-measure-online-applications-and-batch-programs contains comprehensive instructions for:

  • Submitting and managing measurement requests and creating Performance Profiles
  • Preparing Performance Profiles for iStrobe and downloading them to the workstation for analysis.

This section describes only those requirements and considerations that are particular to creating Performance Profiles for CA Gen applications.

Before You Begin

Before you submit your measurement request, obtain the following information:

  • Name of the application and where it executes, according to the following table:

    Environment

    Determine

    batch

    The job name and program name, or step name

    CICS

    The name of the CICS region and the load module names of the applications

    IMS

    The name of the IMS region and the load module names of the applications

    TSO

    The TSO session name and the load module names of the application

  • If an online region, the time the application will execute and approximately how long the application runs.
  • Name of the host dataset library where the application load modules are stored (required for the TSO environment).
  • Name of the compiler listing dataset for the CA Gen application. (This information is vital to producing reports that contain the maximum amount of information).

If you are unsure of any of the above information, consult your Strobe system programmer.

Measuring the Application

When you submit the Strobe measurement request to measure a CA Gen application, you need to provide Strobe with some information. From the panel at which you are adding the request, enter Y in the MODULE MAPPING DATA field. Strobe displays the Strobe - Module Mapping panel, as shown in the following figure.

Strobe - Module Mapping Panel Showing CA Gen Parameters

image2021-2-8_17-50-30.png

What you enter on the Strobe - Module Mapping panel depends on the environment in which the application runs. Enter the appropriate information according to your environment to see detailed level information for action diagrams:

If environment is

Enter

In this field

batch

Name of MVS load library where application load modules reside

LIBRARIES TO SEARCH

Load module names of the application

BASELINE OVERRIDE

CICS

The name of the CICS region and the load module names of the applications

BASELINE OVERRIDE

IMS

The name of the IMS region and the load module names of the applications

BASELINE OVERRIDE

TSO

The TSO session name and the load module names of the application

LIBRARIES TO SEARCH

Load module names of the application

BASELINE OVERRIDE

Important

You must specify load module names to see detailed level information for action diagrams. If you are unsure of the load module names, you can submit the measurement request without specifying the names. Next, create the Performance Profile. Then review the Performance Profile, noting the load module names for the action diagrams that are consuming the most resources. For detailed information about this process, refer to the section in the Using-Strobe-to-measure-online-applications-and-batch-programs entitled “Entering Module Mapping Specifications”.

Creating a Profile Relating CPU Activity with CA Gen Statement Text

By default, CA Gen reports associate the CPU execution time observed during the measurement session with specific CA Gen statement numbers.

You can also view the CA Gen statement text and associate the generated COBOL statements with the related CA Gen statement numbers in the action diagram. The process of creating this association is called indexing. This step is optional, but you may find it highly useful.

To create an indexed Performance Profile (one that includes CA Gen statement text and, optionally, the related COBOL statement text), you first need to create a map dataset. A map dataset is the repository for the information required to relate addresses in the generated code with CA Gen statements in the source program. Strobe must have obtained CSECT information for any load module you want to index. For detailed information about this process, refer to the section in the Using-Strobe-to-measure-online-applications-and-batch-programs titled “Entering Module Mapping Specifications”.

Important

To see statement-specific information for an action diagram, you must provide a compiler listing dataset for that action diagram and then produce a map dataset from the listing. Since you may not need this level of detail for all action diagrams, you can first create a Performance Profile without providing any map datasets as input. You can then review the Performance Profile to determine the action diagrams for which you want to see statement-specific information. You need to create map datasets only for the action diagrams in which you are interested.

The following sections describe how to create a compiler listing dataset with the appropriate compile options and how to create the CA Gen map dataset.

Modifying Local Compile Scripts (MVS Host Encyclopedia)

The local compile script for CA Gen applications is stored in the CA Gen installation CLIST library. The CLIST name for the compile script is TICCMPL.

Modifying this script is a global change for all users. When you modify the CA Gen script, you are modifying it for everyone.

To modify the compile script, follow these steps:

  1. Locate the CLIST TICCMPL.
  2. Locate the variable SRCOPTS.
  3. Edit the script options from NOS,NOX,NOMAP,OFF, to S,X,MAP,NOOFF,LIST as shown in the following example:

    /*******************************************
    /* SET UP COMPILE OUTLIST OPTIONS
    /*******************************************
      SET SCROPTS = &STR(S,X,MAP,NOOFF,LIST)
      SET LISTFLAG = N
      ISPEXEC VGET TICGLIB1 ASIS
      SET SYSDVAL = &TICGLIB1
      READDVAL TICCMPL
    /*
      IF &TICCMPL = THEN DO
            SET LISTFLAG = P
            SET SCROPTS = &STR(S,X,MAP,NOOFF,LIST)
            IF &TICCMPL = &TICGLIB1 THEN *
               SET TICCMPL = &TIUPREF..&TICCMPL&TIUSUFX
            END
  4. Ensure that your compile options specify OPT(STD), not OPT(FULL).

Modifying Remote Compile Scripts (MVS Implementation Toolset)

The remote compile script for CA Gen applications is stored in the Implementation Toolset SLIB library. The REXX procedure name for the compile script is TIXMVSLM.

To modify the compile script, follow these steps:

  1. Make a copy of the script, then modify the copy.
    Modifying this script is a global change for all users. When you modify the CA Gen script, you are modifying it for everyone.
  2. Locate the copy of the REXX execute procedure TIXMVSLM.
  3. Locate the variable TICCMPCO.
  4. Edit the compile options from NOS,NOX,NOMAP,OFF, to S,X,MAP,NOOFF,LIST as shown in the following example:

    /* TICCMPCO = COBOL compile options */
    ticcmpco = ‘S,X,MAP,NOOFF,LIST’
    listflag = ‘N’
    /* TICCMPL = listing library */
    if g.listing_lib = ‘’ then do
       ticcmpl = remove_quotes(g.listing_lib)
       listflag = ‘P’
       ticcmpco = ‘S,X,MAP,NOOFF,LIST’
    end
  5. Ensure that your compile options specify OPT(STD), not OPT(FULL).

After you have modified the script, you have two scripts from which to choose when you install the application. If you plan to measure the application, install it with the script you modified for use with Strobe for CA Gen.

Creating the Map Dataset

You can create a map dataset in either of two ways: you can create it when you produce the Performance Profile, or you can create it as a separate step. Since you may want to create a map dataset for your CA Gen application and use DDIO for indexing COBOL, this section describes how to create the map dataset as a separate step.

When you have a SYSPRINT dataset, you can create the map dataset. To do so, select Option 5 (INDEX) from the Strobe Options menu. The Strobe- Index to Create a Map Dataset panel (See the following figure) is displayed.

Strobe- Index to Create a Map Dataset Panel

image2022-5-20_15-47-37.png

6. In the PROGRAM LANGUAGE section, type Y in the CA GEN field. (Always create a CA Gen map dataset. Using DDIO to index COBOL is optional.)

7. In the OUTPUT: Map Dataset field, enter the name for the map dataset you are about to create.

8. Enter the name of the SYSPRINT listing dataset in the INPUT: Compiler SYSPRINT Datasets field.

You now have all the information necessary to create an indexed Performance Profile.

Controlling the Performance Profile - CA Gen Options

When you have the information you need (the sample dataset and, optionally, the map datasets) you can create a Performance Profile for your CA Gen application. You can find detailed information about creating a Performance Profile in the Strobe/ISPF Online Tutorials or the Using-Strobe-to-measure-online-applications-and-batch-programs. This section describes how you do the following:

Controlling the Level of Detail in the Reports

When you create the Performance Profile for your CA Gen application, you can supply a parameter to specify how you want CA Gen activity presented. This optional parameter, IEF, has three subparameters that control the level of detail in the reports:

Subparameter

Purpose

TIMEPCT=nn.n

Indicate the minimum percentage of CPU or run time for a CA Gen statement detail line to be printed on the report. For example, to print detail lines that display activity above 15%, enter:

IEF=TIMEPCT=15

nn.n is a value between 0.0 and 99.9 (default 0).

TOPTEXT=nn

Specify the number of CA Gen statements for which you want to see full statement text. The report shows the statements with the most identified CPU time or run time percentage, if you supply an IEF map dataset when you create the performance profile. A value of 99 shows full statement text for all CA Gen statements within an action diagram. For example, to examine the statement text for the five statements that consumed the most CPU or run time, specify:

IEF=TOPTEXT=5

nn is a value from 0 to 99 (default 3).

OFFSET

Specify that activity is to be reported by offset within each COBOL statement within SQL statement within CA Gen statement number. (The default is not to report the offset.)

To change the level of detail, enter Y in the Detail Reports field of the Strobe - Produce A Performance Profile panel. Strobe displays the Strobe- Detail For A Performance Profile panel. The example in the following figure. specifies that any CA Gen statement that has more than 2% CPU use or run time associated with it will display as a detail line in the reports. If you included the CA Gen map dataset when you created the Performance Profile, the expanded report will also show the statement text for the five CA Gen statements that consumed the most CPU or run time. Each detail line will also show activity by the COBOL offset.

Strobe- Detail For A Performance Profile Panel

image2021-2-8_18-3-6.png

Source Indexing the Performance Profile

After you have created a map dataset, you specify that Strobe use this indexing information when creating the Performance Profile by following these steps:

  1. Type Y in the Indexing field of the Strobe- Produce A Performance Profile panel.
  2. Press Enter to display the Strobe- Include Maps of Indexed Source Modules and/or DDIO Files panel (Strobe - Include Maps of Indexed Source Modules and/or DDIO Files Panel).
  3. Specify the names of map datasets:
    • Enter the name or names of any map dataset that you created for the measured CA Gen application, as described in Creating the Map Dataset.
    • Specify the names of existing map datasets in the MAP DATA SET NAMES field. (Clear the names of map datasets you do not want to use.)
    • If you choose to create a new map dataset in this step, type Y in the NEW MAPS field and follow the directions in Creating the Map Dataset. When you have finished indexing, press Enter to return to the Strobe- Include Maps of Indexed Source Modules and/or DDIO Files panel where your map dataset has been added to the list of names.

Strobe- Include Maps of Indexed Source Modules and/or DDIO Files Panel

image2021-2-8_18-4-36.png

Preparing Performance Profiles for iStrobe

If you plan to use iStrobe to analyze your CA Gen measurement data, you must specify the Performance Profile parameters that prepare the data for Strobe. For more details, refer to the Using-Strobe-to-measure-online-applications-and-batch-programs section Creating iStrobe Performance Profiles. We recommend that you request the Strobe SQL Analysis reports be created, as these reports provide additional opportunities for improving applications that access Db2. For a brief description, see Using the SQL Statement Analysis Reports.

 

Tip: For faster searching, add an asterisk to the end of your partial query. Example: cert*