A fix is available
APAR status
Closed as program error.
Error description
Performance of INITIALIZE or MOVE statements may be worse in COBOL 6.3 than in COBOL 6.2
Local fix
None. Apply PTF
Problem summary
**************************************************************** * USERS AFFECTED: Users of Enterprise COBOL 6.3 compiling * * programs at OPT(1|2) with INITIALIZE * * statements or consecutive MOVE statements * * that initialize or MOVE SPACES (or similar * * values that repeat the same single byte of * * data) to consecutive alphanumeric or USAGE * * DISPLAY data items that are at between 9 * * and 31 bytes each. * **************************************************************** * PROBLEM DESCRIPTION: Performance of INITIALIZE or MOVE * * statements may be worse in COBOL 6.3 * * than in COBOL 6.2 * **************************************************************** * RECOMMENDATION: Apply the provided PTF * **************************************************************** The compiler will attempt to merge stores of constant values to sequential receivers, whether generated by individual consecutive MOVE statements, a group MOVE, or INITIALIZE statements, into single larger moves, as this gives better performance than individual smaller moves. In Enterprise COBOL 6.3, the compiler was changed to take advantage of further performance improvements using ripple copies: where a single byte of data is written to a receiver and then that byte is copied to successive bytes of that and possibly other consecutive receivers. In cases where the compiler identified possible ripple-copy opportunities in the middle of a sequence of consecutive constant stores, the compiler was interrupting the sequence of stores while also failing to combine the stores involved in the ripple copy, leading to an increased number of store operations compared to COBOL 6.2.
Problem conclusion
The compiler was fixed to combine stores into ripple copies, if a sequence is found in the middle of consecutive stores, only if the combined size of the ripple-copy items totals 32 bytes. If the combined size is less than 32 bytes, the compiler was also fixed to still consider the ripple-copy stores as part of a longer sequence of consecutive stores to combine into one larger store.
Temporary fix
Comments
APAR Information
APAR number
PH41632
Reported component name
ENT COBOL FOR Z
Reported component ID
5655EC600
Reported release
630
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt / Xsystem
Submitted date
2021-10-27
Closed date
2021-11-18
Last modified date
2021-12-01
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
Modules/Macros
IGY8RWTU IGYCASMB IGYCCBE IGYCCCRT IGYCCICS IGYCCSRV IGYCDGEN IGYCDIAG IGYCDMAP IGYCEN$0 IGYCEN$1 IGYCEN$2 IGYCEN$3 IGYCEN$4 IGYCEN$5 IGYCEN$8 IGYCEN$D IGYCEN$R IGYCFGEN IGYCFREE IGYCINIT IGYCJA$0 IGYCJA$1 IGYCJA$2 IGYCJA$3 IGYCJA$4 IGYCJA$5 IGYCJA$8 IGYCJA$D IGYCJA$R IGYCLIBR IGYCLSTR IGYCLVL0 IGYCLVL1 IGYCLVL2 IGYCLVL3 IGYCLVL8 IGYCMALL IGYCOSCN IGYCPGEN IGYCRCTL IGYCRDPR IGYCRDSC IGYCREAL IGYCRWT IGYCSCAN IGYCSIMD IGYCUE$0 IGYCUE$1 IGYCUE$2 IGYCUE$3 IGYCUE$4 IGYCUE$5 IGYCUE$8 IGYCUE$D IGYCUE$R IGYCXREF IGYDRV IGYEQCWI IGYMSGE IGYMSGK IGYMSGT IGYQCBE IGYQSPLT IGYZQEN6 IGYZQENU IGYZQJP6 IGYZQJPN
Fix information
Fixed component name
ENT COBOL FOR Z
Fixed component ID
5655EC600
Applicable component levels
R630 PSY UI78163
UP21/11/25 P F111
R631 PSY UI78164
UP21/11/25 P F111
R632 PSY UI78165
UP21/11/25 P F111
Fix is available
Select the PTF appropriate for your component level. You will be required to sign in. Distribution on physical media is not available in all countries.
[{"Business Unit":{"code":"BU058","label":"IBM Infrastructure w\/TPS"},"Product":{"code":"SS6SG3","label":"Enterprise COBOL for z\/OS"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"630","Line of Business":{"code":"LOB35","label":"Mainframe SW"}}]
Document Information
Modified date:
12 December 2023