z/OS MVS Setting Up a Sysplex
Previous topic | Next topic | Contents | Contact z/OS | Library | PDF


Requesting the use of storage-class memory

z/OS MVS Setting Up a Sysplex
SA23-1399-00

Start of change

Storage-class (flash) memory provides an overflow capability to minimize the probability of structure-full conditions. Use the CFRM policy SCMMAXSIZE and SCMALGORITHM keywords to enable the use of storage-class memory for a structure.

When the number of structure objects reaches a system-determined threshold percentage of the maximum number that the structure's real storage can contain, a suitably configured coupling facility can spill the excess structure objects into storage-class memory. This protects against classes of application failures that cause the rate of writes to the structure to exceed the rate of deletions. However, this protection comes at the expense of potentially degraded performance, as writing to and reading from storage-class memory is slower than accessing the coupling facility's real storage. Coupling facilities at CFLEVEL 19 and above can exploit storage-class memory.

The use of storage-class memory is not a guarantee that structure-full conditions will not occur, since the storage-class memory itself might fill up. Moreover, not all structure objects are eligible for migration to storage-class memory, and use of storage-class memory requires additional CF real storage (augmented space) that might not be available when needed.

Storage-class memory is not allocated to the structure until required for use. It is therefore possible to overcommit the storage-class memory that is configured to the coupling facility. It is possible to define the CFRM policy such that the sum of the SCMMAXSIZE values for allocated structures exceeds the total amount of storage-class memory that is available to the coupling facility.
Note: Do not overcommit storage-class memory. This will ensure that you have the desired amount of storage available in the event of an application failure that causes the structure to fill up.

The maximum amount of storage-class memory that is available for use with a structure that is allocated in accordance with the SCMMAXSIZE specification may be smaller or larger than SCMMAXSIZE. Various factors can cause the coupling facility to assign a lower maximum value than specified. If there are no limiting factors and the specified size is not an even multiple of the storage-class memory increment, the coupling facility will round SCMMAXSIZE up to the next highest increment. To display the actual amount of storage-class memory that is assignable to and currently allocated to a structure, issue the DISPLAY XCF,STRUCTURE command.

Using storage-class memory requires that the coupling facility allocate augmented space to allow the coupling facility to track the location of data and controls contained in storage-class memory. A small amount of augmented space, referred to as fixed augmented space, is always assigned to a structure that is allocated to support storage-class memory. Additional augmented space is allocated from the coupling facility's free space on an on-demand basis, and like storage-class memory itself, is returned to the free pool when no longer required. Neither the fixed nor the dynamic augmented space is included in the reported structure size. When evaluating coupling facility capacity and white space, you must consider the amount of augmented space that is required to support the maximum amount of storage-class memory that the facility is potentially using at any one time.

A structure's SCMMAXSIZE specification interacts with its SIZE, INITSIZE, and MINSIZE specifications in a complex manner. The following effects of using storage-class memory are possible:
  • The structure size required for a given workload increases significantly, quite apart from the requirements for fixed and dynamically allocated augmented space. The coupling facility rejects structure allocation requests that specify a structure size that is too small for effective use of storage-class memory.
  • The system might initially allocate the structure at a size smaller than MINSIZE.
  • The system might report structure-full conditions before either the coupling facility real storage that is allocated to the structure or the maximum specified storage-class memory is full. The coupling facility might reserve some amount of allocated storage to ensure that it has the resources necessary to transfer structure objects between storage-class memory and real storage, and therefore might not make the entire allocated structure capacity available for application requests.
Use the System z Coupling Facility Structure Sizer (CFSizer) at http://www.ibm.com/systems/support/z/cfsizer/ to determine a consistent set of SIZE, INITSIZE, and SCMMAXSIZE specifications that will provide the desired structure capacity.

The maximum amount of storage-class memory that a structure can use is the smaller of the CFRM policy SCMMAXSIZE value and the total amount of storage-class memory that is configured to the coupling facility. (Other factors might even further limit this value.)

The use of storage-class memory increases the amount of control storage that is required to support a given number of entries and elements. The use therefore reduces the number of entries and elements that coupling facility real storage can accommodate by a structure of a specified size. If the amount of storage-class memory that is configured to the coupling facility is less than the SCMMAXSIZE specification, and if the structure is therefore allocated to support a smaller maximum amount of storage-class memory than intended by the CFRM policy, it would be capable of containing more entries and elements than it would if allocated in a coupling facility with more configured storage-class memory. That would cause a problem if the structure were to be subsequently rebuilt into a coupling facility with more storage-class memory because the rebuild new structure instance would not be able to accommodate the same object counts as it could when the structure was originally allocated. To prevent this conflict, the system limits the number of entries and elements when allocating in a coupling facility with less storage-class memory than specified by the policy.

To mitigate the performance penalty that is associated with the use of storage-class memory, the coupling facility attempts to migrate to storage-class memory those structure objects that are not expected to be used in the near future (pre-staging). It also retrieves from storage-class memory ahead of time those objects that are expected to be used soon (pre-fetching). The migration and retrieval decisions for a structure depend heavily on the associated application's anticipated pattern of structure reference. Therefore, only certain structures are eligible to exploit storage-class memory. See Table 1 for a list of eligible structures and the associated pre-staging and pre-fetching algorithm (SCMALGORITHM) type.
Note: Specification of SCMMAXSIZE and the related keywords for other structures might have unpredictable results, potentially including connect failures or performance degradation.
The following system-determined high and low thresholds control pre-staging and pre-fetching activities into and out of storage-class memory:
  • When the number of in-use structure objects of a given type increases above the high threshold percentage of the total number of that object type that can reside within coupling facility real storage, the coupling facility begins migrating structure objects from coupling facility real storage into storage-class memory.
  • When the number of in-use structure objects of all migratable types falls below the low threshold percentage of the total number that can reside within coupling facility real storage, the coupling facility begins migrating structure objects from storage-class memory back into coupling facility real storage.

Structure alteration is not permitted as long as structure objects exist in storage-class memory, or when augmented space other than the fixed augmented space is in use.

CFRM policy changes to the SCMMAXSIZE or SCMALGORITHM keywords cause the policy change to remain pending until the affected structure is deallocated or rebuilt.

End of change

Go to the previous page Go to the next page




Copyright IBM Corporation 1990, 2014