# Compaq ACMS for OpenVMS
Managing Applications

Previous | Contents | Index

# 10.3 Calculating EXC Process Quotas with ACMEXCPAR.COM

The ACMEXCPAR.COM procedure performs these operations:

- Ensures that values for all variables necessary to calculate quotas are available in an initialization file created by you or by ACMEXCPAR.COM.
- Reads values from the initialization file.
- Calculates EXC quota values.
- Modifies the system user authorization file SYS$SYSTEM:SYSUAF.DAT using the EXC quota values.

Always run ACMSPARAM.COM before you run ACMEXCPAR.COM. By so doing, ACMEXCPAR.COM uses the correct ACMSGEN parameter values, as set by ACMSPARAM.COM.

## 10.3.1 Running ACMEXCPAR.COM

ACMEXCPAR.COM accepts initial values from the <application-name>_GENVAR.DAT file, and modifies EXC quotas. ACMEXCPAR.COM is located in the SYS$MANAGER directory. You need the SYSPRV privilege to run it. This section shows how to run ACMEXCPAR.COM.

Run ACMEXCPAR.COM as follows:

    $ SET DEFAULT SYS$MANAGER
    $ @ACMEXCPAR [phase] application-name

ACMEXCPAR.COM consists of four phases. You can run the command procedure as a whole, or run each phase independently. The four phases are:

- The FINDVAL phase creates a file, <application-name>_GENVAR.DAT, that contains initilization values for the ACMEXCPAR.COM procedure. The <application-name>_GENVAR.DAT file also contains the following ACMSGEN parameters: TWS_POOLSIZE, TWSC_POOLSIZE, WS_POOLSIZE, WSC_POOLSIZE, MSS_MAXBUF, MSS_PROCESS_POOL, and MAX_LOGINS, and the OpenVMS SYSGEN parameter MAXPROCESSCNT.
- The GENVAR phase checks to make sure that all the variables required for the GENPAR phase are in <application-name>_GENPAR.DAT.
- The GENPAR phase prompts you for a unique UIC for each ACMS account and calculates quota values for the EXC.
- The WRITEPAR phase reads the quota values created by the GENPAR phase and uses them to modify the system user authorization file, SYSUAF.DAT.

The phase parameter can also take the following input:

- ALL---Runs all four phases consecutively. ALL is the default.
- CURRENT---Runs the GENVAR, GENPAR, and WRITEPAR phases without running the FINDVAL phase. Use CURRENT when you want to use values previously gathered by FINDVAL, or manually edited in the command procedure's initialization file.
- HELP---You can invoke HELP as the first parameter to ACMEXCPAR.COM. If you do not specify a second parameter, you receive a help message for the entire ACMEXCPAR.COM procedure. Specify HELP as the first parameter to ACMEXCPAR.COM, followed by the name of a single phase as a second parameter to get a help message for that phase only. For example, for help on the GENPAR phase, specify:

      $ @ACMEXCPAR HELP GENPAR

  You can also get help for a particular variable by specifying the variable name as the second parameter. For example, to get help for the FORM_CNT variable, specify:

      $ @ACMEXCPAR HELP FORM_CNT

You can run the entire command procedure or run the phases separately. You will usually want to run the entire command procedure at one time. However, sometimes you may want to run the phases one at a time and check the results before proceeding. For example, you may want to check the values placed by FINDVAL in <application-name>_GENVAR.DAT before running the rest of ACMEXCPAR.COM. To do so, run the FINDVAL phase as follows:

    $ SET DEFAULT SYS$MANAGER
    $ @ACMEXCPAR FINDVAL <application-name>

FINDVAL edits the <application-name>_GENVAR.DAT file or creates it (if it does not exist) and places variable values in the file. Edit the file, make any changes, and run the final three phases (GENVAR, GENPAR, and WRITEPAR) as follows:

    $ @ACMEXCPAR CURRENT <application-name>

Using the CURRENT parameter invokes the GENVAR, GENPAR, and WRITEPAR phases consecutively.

The ACMEXCPAR procedure uses information in .ADB and .TDB database files, and ACMSGEN parameters to set the initial variables, and puts them in <application-name>_GENVAR.DAT. The FINDVAL phase takes the application name you supply at the command line and appends "_GENVAR.DAT" to it. This file contains initialization values specific to the application you named.

See Table 10-4 for a summary of the four phases.

Figure 10-2 illustrates the interaction of the four phases of ACMEXCPAR.COM.

Figure 10-2 Setting EXC Process Quotas with ACMEXCPAR.COM

Before running ACMEXCPAR.COM, make sure that all logicals used in application and task definitions are defined. Otherwise, the procedure may fail.

Table 10-4 Phases of ACMEXCPAR.COM
Phase |  | Description
--- | --- | ---
FINDVAL
| Input file: | None
| Output File: | SYS$MANAGER:<application-name>_ GENVAR.DAT
| Function: | The FINDVAL phase performs the first phase of the ACMEXCPAR.COM procedure. FINDVAL creates a file, <application-name>_GENVAR.DAT, that contains initialization values for the ACMEXCPAR.COM procedure. These values are derived by running ACMSGEN and by using ADU to gather information from the application database and its task group databases. FINDVAL automatically derives the name of the output file from the application name that you supply when you invoke the FINDVAL command procedure. You can also directly create and edit the <application-name>_GENVAR.DAT file. See Section 10.3.2 to create the initialization file without using FINDVAL.
GENVAR
| Input file: | SYS$MANAGER:<application-name>_GENVAR.DAT
| Output File: | SYS$MANAGER: <application-name>_GENPAR.DAT
| Function: | The GENVAR phase performs the second phase of the ACMEXCPAR.COM procedure. GENVAR ensures that values are specified for all variables necessary to calculate EXC quotas. GENVAR automatically derives the names of the input and output files from the application name that you supply when you run the GENVAR command procedure.
GENPAR
| Input file: | SYS$MANAGER:<application-name>_GENPAR.DAT
| Output File: | SYS$MANAGER:<application-name>_ WRITEPAR.DAT
| Function: | The GENPAR phase performs the third phase of the ACMEXCPAR.COM procedure. GENPAR calculates quota values for the Application Execution Controller (EXC). The phase reads the variable values from <application-name>_GENPAR.DAT, calculates the quota values, and writes the values to the file <application-name>_WRITEPAR.DAT. GENPAR automatically derives the names of the input and output files from the application name you supply when you run the command procedure.
WRITEPAR
| Input file: | SYS$MANAGER:<application-name>_WRITEPAR.DAT
| Output File: | SYS$SYSTEM:SYSUAF.DAT
| Function: | The WRITEPAR phase performs the fourth phase of the ACMEXCPAR.COM procedure. WRITEPAR reads the quota values from <application-name>_WRITEPAR.DAT and uses them to modify the system user authorization file, SYSUAF.DAT. WRITEPAR derives the input file name from the application name you supply when you run the procedure.

## 10.3.2 Supplying Variable Values for ACMEXCPAR.COM

ACMEXCPAR.COM requires initial variables to calculate the EXC process quota values needed to run ACMS. Table 10-5 lists these variables. The variables are stored in SYS$MANAGER:<application-name>_GENVAR.DAT. ACMEXCPAR.COM derives the variable values by:

- Running ACMSGEN to gather ACMSGEN parameters.
- Using ADU to gather information from the .ADB file and its .TDB files.

Note ACMSEXCPAR.COM does not support logical name search lists for TDB file specifications.

The two ways to gather the variables used to calculate EXC process quotas are:

- Run the ACMEXCPAR.COM FINDVAL phase. FINDVAL derives the variable values by running ACMSGEN and reading from the application and task group databases. FINDVAL creates the file <application-name>_GENVAR.DAT.
- Copy the template file SYS$MANAGER:ACMEXCPAR_GENVAR.DAT to SYS$MANAGER:<application-name>_GENVAR.DAT. Then edit the file and use it for input to the FINDVAL phase rather than having FINDVAL derive the values as described earlier. This allows you to set values for several variables that FINDVAL would otherwise supply with defaults (AGENT_CNT, LOCAL_TDMS_TASK_CNT, REMOTE_AGENT_CNT, REMOTE_TK_INSTANCE_CNT). Example 10-2 shows a copy of the SYS$MANAGER:ACMEXCPAR_GENVAR.DAT template.

  Example 10-2 Variables in ACMEXCPAR_GENVAR.DAT Template

      AGENT_CNT =
      EXC_USERNAME :=
      EXC_TK_INSTANCE_CNT =
      EXC_RLB_CNT =
      EXC_MSG_CNT =
      EXC_TDB_CNT =
      EXC_RLB_BLKS =
      EXC_SERVER_CNT =
      EXC_SP_CNT =
      FORM_CNT =
      LOCAL_TDMS_TASK_CNT =
      REMOTE_AGENT_CNT =
      REMOTE_TK_INSTANCE_CNT =

Section 10.3.1 describes how to run ACMEXCPAR.COM.

After you become familiar with your ACMS system, you might choose to modify EXC quotas by editing the input or output files of FINDVAL, GENVAR, GENPAR, and WRITEPAR and then running each phase individually. Section 10.3.3 describes this method of modifying parameters.

Table 10-5 describes the variables included in the <application-name>_GENVAR.DAT file and required by ACMEXCPAR.COM. The table lists the ACMS EXC process quotas whose calculations are affected, in part or in whole, by the variables from this file. Most of the variables are application-specific. ACMEXCPAR.COM determines these from information in the .ADB and .TDB database files.

Six variables in <application-name>_GENVAR.DAT map directly to the ACMSGEN parameters MSS_MAXBUF, MSS_PROCESS_POOL, TWS_POOLSIZE, TWSC_POOLSIZE, WS_POOLSIZE, and WSC_POOLSIZE. The ACMSGEN parameters are set by ACMSPARAM.COM, and the values are used by ACMEXCPAR.COM to set the appropriate EXC process quotas. Always run ACMSPARAM.COM before running ACMEXCPAR.COM so that these values are set correctly.

Table 10-5 Variables Required for ACMEXCPAR.COM
Variable
AGENT_CNT
| Description: | Number of agent processes on the local system submitting tasks to this application. This includes CP, QTI, ALL-IN-1 processes, Request Interface (RI) agents, EXC (if application is using detached tasks), and any other customer-supplied agents submitting tasks to this application.
| Default: | 2
| Affects: | ASTLM
EXC_ADB_BLKS
| Description: | Size, in blocks, of the application.
| Default: | Size, in blocks, of the .ADB file.
| Affects: | EXC process quota PGFLQUOTA
EXC_MSG_CNT
| Description: | Number of different message files referred to by all of the task groups in this application.
| Default: | Number of message files referred to by task groups in the application (from the ADU DUMP GROUP command).
| Affects: | ENQLM, FILLM
EXC_RLB_BLKS
| Description: | Total size (in blocks) of request library (.RLB) files referred to by all of the task groups in this application. Add the size of a request library once for each different task group that refers to it.
| Default: | Total size of .RLBs from EXC_RLB_CNT variable.
| Affects: | PGFLQUOTA
EXC_RLB_CNT
| Description: | Number of different request library (.RLB) files referred to by all of the task groups in this application. Count a request library once for each different task group that refers to it.
| Default: | Number of .RLB files referred to by task groups in the application (from the ADU DUMP GROUP command).
| Affects: | ENQLM, FILLM
EXC_SERVER_CNT
| Description: | Number of servers defined in the application database (from the ADU DUMP APPLICATION command).
| Default: | Number of servers defined in the application database (from the ADU DUMP APPLICATION command).
| Affects: | ASTLM, TQELM
EXC_SP_CNT
| Description: | Number of server processes that can be started for the application at any one time.
| Default: | Number of servers defined in the application database (from the ADU DUMP APPLICATION command).
| Affects: | ASTLM, TQELM
EXC_TDB_BLKS
| Description: | Size, in blocks, of all the TDBs for the application.
| Affects: | EXC process quota PGFLQUOTA
EXC_TDB_CNT
| Description: | Number of task group databases referred to in this application.
| Default: | Number of .TDB files referred to in the application database (from the ADU DUMP APPLICATION command).
| Affects: | ENQLM, FILLM, PGFLQUOTA
EXC_TK_INSTANCE_CT
| Description: | The maximum number of currently executing tasks for this application.
| Default: | MAXIMUM TASK INSTANCES from the application database, or 64 if none is specified.
| Affects: | ASTLM, BIOLM, BYTLM, DIOLM, PGFLQUOTA, TQELM, WSDEFAULT, WSQUOTA, WSEXTENT
EXC_USERNAME
| Description: | User name for the Application Execution Controller (EXC) process. This user name must match the APPLICATION USERNAME specified in the application definition, and be enclosed in quotes or be assigned using the DCL string operator ":=".
| Default: | APPLICATION USERNAME from the application database (.ADB)
| Affects: | EXC user name entry in the system authorization file
FORM_CNT
| Description: | Number of different DECforms form (.FORM) files referred to by all of the task groups in this application. Count a form file once for each different task group that refers to it.
| Default: | Number of .FORM files referred to by task groups in the application (from the ADU DUMP GROUP command).
| Affects: | ENQLM, FILLM
LOCAL_TDMS_TASK_CNT
| Description: | Number of concurrently active task instances using TDMS that are submitted by users on the local system. Do not include tasks using TDMS that are submitted from Request Interface (RI) agents.
| Default: | 10
| Affects: | PGFLQUOTA
REMOTE_AGENT_CNT
| Description: | Number of remote agents (CP, RI, user-written) submitting tasks to this application from remote systems.
| Default: | 1
| Affects: | BIOLM, BYTLM, FILLM
REMOTE_TK_INSTANCE_CNT
| Description: | Number of concurrently active task instances submitted by users on remote systems. This includes task instances submitted from any type of ACMS agent (including CPs) on remote systems.
| Default: | 5
| Affects: | BYTLM

Previous | Next | Contents | Index