Region size requirements for the Extract function
The Extract function of FPA operates in a virtual storage region as z/OS® batch job steps. HFPMAIN0 runs in 31-bit addressing mode.
Region size for the Extract function depends on the size of a UOW, the number of areas being extracted, the number of output files, and the ITASKCTL specifications. Typically, database maintenance is a relatively important function. To increase the performance of the extract program, it would be advisable to run it in a region that has a relatively high dispatching priority (that is, at least equal to the dispatching priority of a message processing region).
Estimating the region size for Extract
The region size required for the Extract function is a function of the size of a UOW, the number of areas being extracted, the number of output files, and the ITASKCTL specifications.
In most cases, the specification on the EXEC statement for HFPMAIN0 of a region that is too small, is detected during the initialization processing of the main task. This causes processing to be terminated at that point. Under certain conditions, the region size shortfall does not become evident until the actual extract has begun. The job must be completely rerun. Thus, the region size calculations must always be performed prior to initiating extract processing.
If SORT=YES is specified, the sort program also requires region space. For how to estimate the required region size, see the DFSORT Application Programming Guide.
The following worksheet is for estimating the region size that is required for a typical extract job. The actual region size depends on the keywords that are specified for the job. Therefore, when you specify the region size in your JCL, use a higher value than the value calculated from this worksheet.
FPA programs, internal tables, control blocks 3,020,000
Number of areas defined in input DBD * 1,300 ---------
Internal tables, control blocks 18,200
Maximum Segment length * 1,000 ---------
Maximum CISZ * 4 ---------
Internal I/O buffer 1,000,000 (If OCHECK=DEFER)
subtotal ---------
Value specified on ITASKCTL * subtotal ---------
Internal tables, control blocks 21,000
Internal I/O buffer 1,000,000 (If OCHECK=NODEFER)
Storage used by Sort program --------- (If SORT=YES)
subtotal ---------
Number of output USR files * subtotal ---------
Number of unloaded areas * 3,700 ---------
Total of CISZ * UOW1 of each area * 2 ---------
Total bytes of unload storage ---------
If ICACHE=YES is specified, the Extract function preloads IOVF and SDEP parts into the data space. The data space size required for the Extract function is a total of the size of IOVF and SDEP parts in each area. In addition, if the input data is an image copy data set, all image copy records are stored into the data space. In this case, the data space for the image copy data set must be added to the size that is calculated by the preceding worksheet.
The following figure shows a worksheet for estimating the data space size for the Extract function.
Total size of IOVF parts in all areas ----------
Total size of SDEP parts in all areas ----------
Total of CISZ * UOW1 * (ROOT1 - ROOT2) in each area ---------- (If input data is IC)
Total bytes of a data space storage ----------