IBM Support

Slow IPLs/Work Control Block Table - Compression



This note addresses the issue of slow IPLs caused by Work Control Block Table cleanup and the possible compression of the table.

Resolving The Problem

Whenever IPLs on an IBM System i products system seem to take longer than they should and appear to hang for quite some time at SRCC9002A95 or SRCC9002C40, the problem is a result of the time the system needs to validate the job structures. The validation of the job structures is done at the SRCC9002A95 stage or the SRCC9002C40 stage, depending upon if the IPL that is in progress is one that follows an abnormal ending of the system (the prior sequence from the prior IPL through the PWRDWNSYS operation). If the system determines that the prior ending was abnormal, the job structure validation occurs at SRCC9002A95 and occurs synchronously; therefore, nothing is running in the IPL process while the validation is occurring. If the prior ending was not determined to be abnormal, the job structure validation occurs at SRCC9002C40 and occurs asynchronously; therefore, other IPL tasks are being performed at the same time. In the latter case, the overall time required for the IPL is shorter. When the IPLs appear to take excessive time at either of these IPL stages, there is a possibility that there are more job structures than are needed by the system.

The operating system job structures are called the Work Control Block Tables. Each job on the system has a job structure in one of these tables. The system starts with one table, named QWCBT01, but creates additional tables as needed. These are named QWCBT02, QWCBT03, and so on through QWCBT30. Each table holds 16352 job structures. These job structures are reused after a job is ended and all of its spooled files are in FIN status.

The number of WCBT objects that can actually be created for a system is a function of system value QMAXJOB. This system value is shipped set to 163520 which reflects the maximum job structures for 10 WCBTs. The upper limit on QMAXJOB is 970000. This limit is somewhat smaller than what 60 tables can hold. The reason is that the system allows a buffer so that the system is able to IPL even when the maximum limit is reached.

The display for the WRKSYSSTS command shows the total number of jobs on the system. This is the number of job structures for which a job is currently defined in some particular status which may be ACTIVE, JOBQ, OUTQ, and so on. It does not include the job structure entries for which the job structure is available for reuse by the system. The Display Job Tables (DSPJOBTBL) command shows the number of QWCBTnn tables that exist on the system, the total number of entries currently in the table, the number of available entries and the number of in-use entries. There is no equivalent command available on earlier release systems.

If the system has more work control block tables than are needed on the system, or even if it just has a single table but it contains more job structures that you normally need on the system, then you might consider having the system do a compression of the work control block tables. This operation is performed during an IPL. The compression operation will move all in-use entries down to the start of the table (using as many blocks as needed) and then will do a truncation of the tables to delete the superfluous entries. It will leave a certain amount of available job structures for use as determined by certain system values and the underlying compression algorithm. This compression operation will result in freeing up storage on the system.

The Display IPL Attributes (DSPIPLA) command displays the Compress job tables (CPRJOBTBL) parameter that controls the type of IPL where a compress operation is performed. The Change IPL Attributes command (CHGIPLA) uses the CPRJOBTBL parameter to control when the compress operation is performed.

[{"Type":"MASTER","Line of Business":{"code":"LOB57","label":"Power"},"Business Unit":{"code":"BU058","label":"IBM Infrastructure w\/TPS"},"Product":{"code":"SWG60","label":"IBM i"},"Platform":[{"code":"PF012","label":"IBM i"}],"Version":"7.1.0"}]

Historical Number


Document Information

Modified date:
16 November 2020