[z/OS]

Adding SMDS and SCM to the initial structure

How you add SMDS and SCM for emergency storage on IBM® MQ.

About this task

Important: IBM z16 is planned to be the last generation of IBM Z® to support the use of Virtual Flash Memory (also known as Storage Class Memory, or SCM) for Coupling Facility images. For more information see: IBM Z and IBM LinuxONE 4Q 2023 Statements of Direction.

As an alternative, you should either use larger structures or offload messages to SMDS.

This part of the task uses the basic configuration described in Emergency storage - basic configuration. The scenario describes the addition of shared message data sets (SMDS), and then of SCM to the initial structure.

This final configuration is illustrated in Figure 1.
Figure 1. Configuration adding SMDS and SCM for emergency storage
The objects shown on this diagram are fully described in the text.

Procedure

  1. Create the SMDS data set that the SCEN1 application structure uses, by editing the CSQ4SMDS sample JCL, as shown:
    
    //CSQ4SMDS JOB NOTIFY=&SYSUID
    //*
    //* Allocate SMDS
    //*
    //DEFINE EXEC PGM=IDCAMS,REGION=4M
    //SYSPRINT DD SYSOUT=*
    //SYSIN DD *
    DEFINE CLUSTER           -
    (NAME(CSQSMDS.SCEN1.CSQ3.SMDS) -
    MEGABYTES(5000 3000)     -
    LINEAR            -
    SHAREOPTIONS(2 3) )      -
    DATA                -
    (NAME(CSQSMDS.SCEN1.CSQ3.SMDS.DATA) )
    /*
    //*
    //* Format the SMDS
    //*
    //FORM   EXEC PGM=CSQJUFMT,COND=(0,NE),REGION=0M
    //STEPLIB DD DSN=MQ800.SCSQANLE,DISP=SHR
    //     DD DSN=MQ800.SCSQAUTH,DISP=SHR
    //SYSUT1  DD DISP=OLD,DSN=CSQSMDS.SCEN1.CSQ3.SMDS
    //SYSPRINT DD SYSOUT=*
    
  2. Issue the ALTER CFSTRUCT command to change the SCEN1 application structure, to use SMDS for offloading, implementing the default offload rules:
    
    ALTER CFSTRUCT(SCEN1) OFFLOAD(SMDS) OFFLD1SZ(32K) OFFLD2SZ(4K) OFFLD3SZ(0K)
    DSGROUP('CSQSMDS.SCEN1.*.SMDS') DSBLOCK(1M)
    
    Note the following:
    • Because SCEN1.Q is the only shared queue on the SCEN1 application structure, the DSBLOCK value has been set to 1M, the largest value possible. This should be the most efficient setting for our scenario.
    • Because the messages sent by the putting application are 30 KB, offloading to SMDS does not start until the second offload rule is met, when the structure is 80% full.
  3. Run your test application again.
    Note the increased storage of messages on the queue.
  4. Add 4 GB of SCM to structure IBM1SCEN1 by carrying out the following procedure:
    1. Check how much SCM is installed, and allocated to CF01, by issuing the following command:
      
      D CF,CFNAME=CF01
      
    2. Check the STORAGE-CLASS MEMORY figures in the STORAGE CONFIGURATION section of the displayed output to see the available storage.
    3. Update the CFRM policy with the SCMMAXSIZE and SCMALGORITHM keywords as shown:
      
      STRUCTURE
      NAME(IBM1SCEN1)
      SIZE(1024M)
      INITSIZE(512M)
      ALLOWAUTOALT(YES)
      FULLTHRESHOLD(85)
      PREFLIST(CF01)
      ALLOWREALLOCATE(YES)
      DUPLEX(DISABLED)
      ENFORCEORDER(NO)
      SCMMAXSIZE(4G)
      SCMALGORITHM(KEYPRIORITY1)
      
  5. Activate the CFRM policy by issuing the following command:
    
    SETXCF START,POLICY,TYPE=CFRM,POLNAME=polname
    
  6. Rebuild the IBM1SCEN1 structure.
    You must carry out this procedure because the structure was allocated when you made the previous changes.
    Issue the following command to rebuild the structure:
    
    SETXCF START,REBUILD,STRNM=IBM1SCEN1
    

Results

You have successfully added SCM to your configuration.

What to do next

Optimize the performance of your system. See Optimizing storage class memory usage for more information.