z/OS Language Environment Customization
Previous topic | Next topic | Contents | Contact z/OS | Library | PDF


Automatic storage tuning behavior

z/OS Language Environment Customization
SA38-0685-00

Automatic storage tuning values are managed for each load module that is used to start an enclave for Language Environment®. For example, transaction ATMW starts program COBOLA (which starts an enclave for Language Environment). COBOLA does a CICS® LINK to COBOLB which starts another Language Environment enclave. COBOLB does a dynamic call to COBOLC (when a dynamic call is done, we are still running in the same enclave). In this example, automatic storage tuning is done for the enclaves started for COBOLA and COBOLB.

When running with Language Environment automatic storage tuning for CICS, Language Environment continuously monitors the amount of Language Environment storage allocated in the enclave for STACK, LIBSTACK, HEAP, ANYHEAP, and BELOWHEAP. The enclave ends normally, Language Environment will automatically increase the initial size values for STACK, LIBSTACK, HEAP, ANYHEAP, and BELOWHEAP as determined by the amount of storage allocated.

In more detail, Language Environment automatic storage tuning for CICS behaves as follows:

  • When a main program starts a Language Environment enclave the first time in a CICS region and the enclave is eligible for automatic storage tuning, Language Environment uses the values for STACK, LIBSTACK, HEAP, ANYHEAP, and BELOWHEAP from the normal search order for runtime options. When a main program starts an eligible enclave a subsequent time, Language Environment uses the initial sizes for STACK, LIBSTACK, HEAP, ANYHEAP, and BELOWHEAP as determined by automatic storage tuning.
  • Whenever a Language Environment enclave is initialized and it is eligible for automatic storage tuning, Language Environment collects the total amount of storage allocated for STACK, LIBSTACK, HEAP, ANYHEAP, and BELOWHEAP while the enclave is active.
    Note: When Language Environment automatic storage tuning for CICS is used, Language Environment collects the amount of storage allocated. It does not collect the amount of storage used.
  • When the enclave ends with an unhandled condition, Language Environment does not update the automatic storage tuning values. When the enclave ends normally, Language Environment automatic storage tuning increases the initial size for STACK, LIBSTACK, HEAP, ANYHEAP, and BELOWHEAP to the amount of storage allocated only when the amount of storage allocated is larger than the initial size. The next time the main program initiates a Language Environment enclave, Language Environment automatic storage tuning will use the updated initial size values.
  • Language Environment automatic storage tuning never decreases the initial size values.

Go to the previous page Go to the next page




Copyright IBM Corporation 1990, 2014