How does IDMS Data spaces/Memory Caching?
As of IDMS release 16.0; the MEMORY CACHE clause replaces DATA SPACE clause so that IDMS Release 16.0 automatically uses Z-storage instead of Data spaces when executing in a z/OS 1.2 or later operating system.
The IDMS release 16.0 Release Summary manual in chapter 6.2.2 Exploiting File Cache in Memory has the details.
Here are the keys points:
Decide what database files should use Memory Cache (Those with high I/Os) and then change the DMCL definition for each file to specify MEMORY CACHE YES. The Database Administration Manual, chapter 6.2.3 altering the DMCL
Definition has the syntax and you can use these two commands:
DCMT VARY DMCL to change DMCL-wide MEMORY CACHE options
DCMT VARY FILE to change the MEMORY CACHE for a specific file to access the information stored in the dictionaries, users require authorization to access the IDMS resources in the IDMS databases.
Where does the actual space come from?
The storage (z-storage) comes from storage above the 64-bit address line. If you don't have 64-bit memory available at all then we will try to allocate a Data space. If that fails the file doesn't get cached.
Do any of the IDMS storage pools need to be increased?
No, since the storage is not obtained from the IDMS storage pools.
Are there any recommended changes required for the IDMS startup region parameter?
You need to verify that you have REGION=0M (which will allow unlimited MEMLIMIT). Release Summary 16.0 6.2.2 Exploiting File Cache in Memory documents three ways to implement MEMLIMIT.
If the MEMLIMIT value is set too low, a 'DC016100 64-BIT STORAGE OBTAIN Failed' message is received.
For example if you have two files that are about 2.8G; then the MEMLIMIT should be set at 3G (MEMLIMIT=3G).
CA IDMS Database Administration manual
Chapter 6.2.3 Altering the DMCL Definition
Chapter 23.4.1 by Caching Files in Memory