ARCH

Default
Start of changeARCH(8)End of change
Recommended
Start of changeARCH(x) where x is the lowest level of hardware your application will have to be run on, including any disaster recovery systems. End of change
Reasoning
Start of changeHigher ARCH settings enable the compiler to exploit features of the corresponding and all earlier hardware models in order to achieve the best performance.
Note: Start of changeYour application might abend if it runs on a processor with an architecture level lower than what you specified with the ARCH option.End of change
End of change
Considerations

None besides matching to hardware level

By varying only ARCH and keeping the other options at their best recommended settings, the following performance improvements were measured over a set of IBM® internal performance benchmarks:
Table 1. ARCH levels with average improvement
ARCH Levels Average % Improvement
ARCH(9) vs. ARCH(8) Start of change0.3% End of change
ARCH(10) vs. ARCH(9) Start of change9.1% End of change
ARCH(11) vs. ARCH(10) Start of change0.9%End of change
ARCH(12) vs. ARCH(11) Start of change8.7%End of change
Start of changeARCH(13) vs. ARCH(12)End of change Start of change1.1%End of change

Start of changeWhen moving from ARCH(8) directly to ARCH(13), the average performance gain on these same set of benchmarks is 23%.End of change

Note that only the ARCH compiler option was changed for the numbers above, and the underlying hardware was an IBM z14™ machine in all cases. This means the performance gains are strictly from compiler improvements in optimizing the COBOL applications tested.

This set of benchmarks is a mix of computation intensive and I/O intensive applications. Computation intensive applications see the largest improvement: for example, one computation intensive benchmark is reduced byStart of change 86%End of change in execution time moving from ARCH(7) to ARCH(12). Other benchmarks spend the majority of their time performing I/O operations, and relatively little time in compiler-generated code. The performance of these benchmarks is not significantly affected by the ARCH option.

For reference, the mapping between ARCH settings and hardware models is provided below:
Table 2. ARCH settings and hardware models
ARCH Hardware Models
ARCH(8) 2097-xxx models (IBM System z10® EC)
2098-xxx models (IBM System z10 BC)
ARCH(9) 2817-xxx models (IBM zEnterprise® z196 EC)
2818-xxx models (IBM zEnterprise z114 BC)
ARCH(10) 2827-xxx models (IBM zEnterprise EC12)
2828-xxx models (IBM zEnterprise BC12)
ARCH(11) 2964-xxx models (IBM z13®)
2965-xxx models (IBM z13s®)
ARCH(12) 3906-xxx models (IBM z14)
3907-xxx (IBM z14 ZR1) models
Start of changeARCH(13)End of change Start of change8561-xxx models (IBM z15®)
8562-xxx (IBM z15 T02) modelsEnd of change

Related references
ARCH (Enterprise COBOL for z/OS® Programming Guide)