Before You Begin

This document details how to modify the default RBTSLEEPER subsystem description so that subsystem jobs run in their own memory pool. This means that the jobs running in this subsystem have an area of memory that is not being used for other processes, which, in theory, makes the jobs process faster.

After modifying the subsystem description, you should monitor the performance of the memory pool in the following areas: DB and non-DB fault pages, active-wait, wait-ineligible, and active-ineligible rates. You may need to make further adjustments, according to current IBM recommendations.

Steps

  1. Sign on under a user profile that is a member of the class *SECOFR and has at least the following special authorities: *ALLOBJ, *SECADM, *JOBCTL, and *IOSYSCFG. The user profile should have Limit capabilities set to *NO.

  2. Make sure the RBTSLEEPER subsystem is inactive.

  3. To determine which pool the RBTSLEEPER subsystem is running in, enter the following command:

    DSPSBSD RBTSLEEPER

    Select option 2, Pool Definitions. Pool ID 1 should be defined as *BASE. Do not make any changes to Pool ID 1. The subsystem monitor job (SBS type job) runs in this pool.

  4. The objective is to add another pool ID to the subsystem description and then route all jobs within the subsystem to this newly created subsystem pool ID. To add a new pool ID, enter the following command and press function key F4 to display the command prompt panel.

    CHGSBSD

    Complete the panel as shown in the following example:

    Note: If you already have defined *SHRPOOL1 as a shared pool for other subsystem descriptions, choose one of the remaining shared pools (*SHRPOOL2–*SHRPOOL60) instead of *SHRPOOL1.

  5. Change the existing routing entries for the RBTSLEEPER subsystem description so that they point to this newly created subsystem pool ID.

    To determine the routing sequences that exist for the RBTSLEEPER subsystem, enter the following command and select option 7, Routing Entries:

    DSPSBSD SBSD(RBTSYSLIB/RBTSLEEPER)

    Write down the routing entry sequence numbers.

  6. Enter the following command to change each of the routing entries to point to the newly created subsystem pool ID:

    CHGRTGE SBSD(RBTSYSLIB/RBTSLEEPER) SEQNBR(xxx) POOL ID(2)

    where: xxx is the routing entry sequence number from the DSPSBSD command.

  7. Enter the WRKSHRPOOL command to display the Work with Shared Pools panel. Specify Defined Size and Max Active values for the shared pool (for example, *SHRPOOL1) that you added to the subsystem description in step 4. This tells the IBM i how much memory to allocate to the shared pool when the subsystem starts and shared pools are allocated.

    Note: The pool size is defined in megabytes with two decimal positions. For example: 20.00 is 20MB.

    The following table lists Robot products, the number of monitor jobs that each product runs, and the number of additional jobs that each product could run. These additional jobs depend on how the different products are configured, and can vary from system to system.

    Find the number of jobs in the table and multiply it by 3MB per job to determine the pool size and Max Active values to define to the shared pool.

    Notes:

    • When setting the activity level on the Work with Shared Pools panel, you need to take into account the product monitor jobs as well as other jobs that could run in this subsystem. Setting this value too high could result in poor performance.
    • Also take into account any other jobs that are not related to the Robot products that are running in the RBTSLEEPER subsystem. We do not recommend that you do this, so this may be a good time to review where these jobs run.
       
    ProductMonitor JobsJobs that could be submitted to this subsystem
    Robot Alert 5 3 There may be more if you have more communication jobs.
    Robot Autotune 8 0 All monitor jobs run in subsystem ATMONITOR.
    Robot Client 5 1  
    Robot Console 6 3

    One job for each message queue being monitored. A maximum of 50 message sets running OPAL.

    One job for each type of logging: FTP, security, and QHST.

    One job for each resource monitor that is active.

    One job for each application log monitor that is active.

    Robot Corral 2 0 One job for each build of an object list.
    Robot CPA 4 0  
    Robot LPAR 0 All jobs run in subsystem RLMONITOR.
    Robot Network 11 (Host) 4  
    Robot Network 11 (Node) 3 One job for Performance Metrics.
    Robot Replay 3 0  
    Robot Reports 7 2 One job for each spooled file being processed.
    Robot Schedule 12 7 Any job using the RBTSLEEPER job queue and all submitted Robot Schedule reports.
    Robot Schedule Enterprise 2  
    Robot Save 12 3 Any backups running through the RBTSLEEPER job queue.
    Robot Space 3 4  
    Robot Transform 2  
    Robot Trapper 5  
    Robot UPS 3 1  
  8. Define the Paging Option value for the shared pool. The Paging Option should be defined as *CALC.

  9. Start the RBTSLEEPER subsystem. You will now see the subsystem running in its shared pool.

 


Still have questions? We can help. Submit a case to Technical Support.

Last Modified On: April 16, 2019