See information about the latest product version
Tuning the HEAP settings on z/OS®
HEAP controls the allocation of the initial heap, controls allocations of additional heap increments, and specifies how that storage is managed.
WebSphere® Message Broker requests an initial heap storage allocation and subsequent heap increments, the sizes of which depend on the type of process. For example, the DFE process requests an initial heap storage allocation of 40 Mb, with subsequent heap increments of 5 Mb. RPTOPTS can be used to generate a report of the runtime options in effect for each process.
- KEEP, which is the default value, specifies that storage allocated to HEAP increments is not released when the last segment of the allocated storage is freed.
- FREE specifies that storage allocated to HEAP increments is released when the last segment of the allocated storage is freed.
For performance reasons, WebSphere Message Broker takes the default, KEEP. For most message processing scenarios, when storage allocations are less than 5 Mb, it is more efficient to reuse storage that has been freed within the heap increment. With KEEP, the 5 Mb heap increment remains allocated, even if all of the storage segments have been released.
If storage requests frequently exceed 5 Mb, these requests are allocated directly on the heap. When the object is freed, the allocation remains on the heap, and is reused for subsequent storage requests whose size is less than, or equal to, the size of the heap allocation. Over time, the heap allocation is used for different-sized objects, and this can lead to fragmentation, which in turn can result in high storage usage. In these circumstances, consider setting the HEAP runtime environment variable for the Language Environment® to use the FREE parameter.
- Stop the broker.
- Make the necessary changes to the profile.
- Submit BIPGEN to re-create the ENVFILE and any execution group specific ENVFILEs.
- Restart the broker.
- Stop the broker.
- Make the necessary changes to the execution group specific profile.
- Submit BIPGEN to re-create the broker ENVFILE and any execution group specific ENVFILEs.
- Restart the broker.
For example, you can change the default values of KEEP to FREE in the following line:
_CEE_RUNOPTS=HEAP64(40M,5M,FREE,9M,32K,KEEP,4096,4096,FREE)