Techniques for getting the best performance
Getting the best performance from
BMC AMI Copy
can involve the following issues:
- Reducing the elapsed time required to make a copy of a table space
- Reducing CPU usage
- Reducing the amount of media required for the output copy data sets
Reducing elapsed time
You might be able to reduce the elapsed time for making copies as follows:
- Use Instant Snapshots to make copies at a data set level using intelligent storage systems. For more information, see Instant Snapshots.
- You can increase the number of read/write buffers to provide additional read ahead and write ahead capability. For more discussion, see BMC-AMI-Copy-read-and-write-buffers-NBRBUFS.
- You can use the CHANGELIMIT option to avoid making copies of spaces that have not changed. For more information, see Specifying-conditional-image-copies.
- You can make merged incremental copies instead of full copies to reduce the elapsed time without adversely affecting recovery times. For more discussion, see Incremental copy techniques.
Do not run RUNSTATS for BMCLGRNX. Using the RUNSTATS utility results in the indexes for this table not being used, thus increasing the time needed to make the copy.
- You can multitask, copying several spaces in different subtasks of the same job.
- You can run BMC AMI Copy jobs with RESETMOD NO to eliminate the need to perform I/O operations back to the table space. These I/O operations cannot overlap read operations. For more discussion, see Resetting-modified-page-indicators-RESETMOD.
- You can use STACK CABINET to reduce the file open and file close overhead on the image copy output. Using STACK CABINET works well if you are copying many objects.
Some common causes of unexpected long elapsed times, especially in the UTILINIT and UTILTERM phases, are:
- Increasing the NBRBUFS installation option (see BMC-AMI-Copy-read-and-write-buffers-NBRBUFS) can greatly reduce elapsed time for BMC AMI Copy jobs. However, those buffers are large and are fixed in memory during I/O. If you use a large NBRBUFS value and run many simultaneous BMC AMI Copy jobs, it is possible to cause jobs to be swapped out by MVS due to memory shortages.
- Long UTILINIT and UTILTERM times can be seen when BMC AMI Copy jobs are swapped out by MVS for any reason. If jobs are swapping out for no apparent reason, consult with your MVS systems programmer about multi-programming level constraints in your system.
- Long access time and contention on BMC tables can occur if RUNSTATS is run against the BMCLGRNX table.
- Poor performance on SYSCOPY can be caused by the indexes not being included by the Db2 optimizer when the BMC AMI Copy plan is bound. If you suspect this problem, bind the BMC AMI Copy plan with the EXPLAIN parameter to see if the SYSCOPY indexes are used.
- Do not change the CLOSE rules generated by the product installation for the BMC objects. Changing to CLOSE YES on BMCUTIL and BMCSYNC can cause serious performance problems.
- Stacking output image copies on tape without dynamic allocation and without the RETAIN JCL subparameter will cause long UTILINIT times. This is due to rewinding and repositioning the tape.
- If the userId authorized to make image copies is one of many secondary IDs, the job might suffer long UTILINIT times.
Reducing CPU usage
You might be able to reduce CPU usage when making copies as follows:
- You can enable zIIP processing by specifying OPTIONS ZIIP ENABLED.
- You can specify minimal page integrity to minimize the CPU overhead resulting from integrity checking. BMC AMI Copy still performs basic integrity checking. For details, see Page-integrity-checking-CHECKLVL.
- You can choose not to use the SQUEEZE option and so not consolidate (on the output copy) all rows on a page in order to make all free space contiguous. Such consolidation is performed at the expense of CPU overhead. For more discussion, see Row-consolidation-SQUEEZE.
- You can specify merged incremental copies instead of full copies to reduce CPU usage. For more discussion, see Full image copy versus incremental image copy.
- You can use the minimum setting for NBRBUFS. However, elapsed time suffers when you decrease the number of read/write buffers. For more discussion, see BMC-AMI-Copy-read-and-write-buffers-NBRBUFS.
- You can choose not to collect statistics with the RUNSTATS option to reduce CPU usage by the BMC AMI Copy job. However, if you run RUNSTATS in a separate step, the overall CPU usage would be reduced by using RUNSTATS YES with the BMC AMI Copy COPY command.
Reducing output media
There are several keywords in BMC AMI Copy that you can use to reduce the amount of output media produced as discussed in the following sections.
You can also reduce the media required by making incremental copies instead of full copies so that only the changed pages are copied. To reduce the media further, you can make merged incremental copies—this results in only the most recent versions of any changed pages being included in a merged incremental copy.