TUNE

The TUNE option specifies the architecture for which the executable program will be optimized.

Syntax

Read syntax diagramSkip visual syntax diagramTUNE=*8910111213
Default
The default TUNE level matches the ARCH level if ARCH is specified. If ARCH is not specified, both ARCH and TUNE default to 8.
Current supported architecture levels and groups of models are as follows:
8
Generates code that is optimized for the 2097-xxx (IBM® System z10® EC) and 2098-xxx (IBM System z10 BC) models in z/Architecture® mode.
9
Generates code that is optimized for the 2817-xxx (IBM zEnterprise® 196) and 2818-xxx (IBM zEnterprise 114) models in z/Architecture mode.
10
Generates code that is optimized for the 2827-xxx (IBM zEnterprise EC12) and 2828-xxx (IBM zEnterprise BC12) models in z/Architecture mode.
11
Generates code that is optimized for the 2964-xxx (IBM z13®) and 2965-xxx (IBM z13s®) models in z/Architecture mode.
12
Generates code that is optimized for the 3906-xxx (IBM z14) and 3907-xxx (IBM z14 ZR1) models in z/Architecture mode.
13
Generates code that is optimized for the 8561-xxx (IBM z15) and 8562-xxx (IBM z15 T02) models in z/Architecture mode.
The TUNE option specifies the architecture for which the executable program will be optimized. The TUNE level controls how the compiler selects the available machine instructions, while staying within the restrictions of the ARCH level in effect. The TUNE option does so to provide the highest performance possible on the given TUNE architecture, choosing from the instructions allowed by the given ARCH level.
Note: TUNE impacts performance only; it does not impact the processor model on which you will be able to run your application.

Select TUNE to match the architecture of the machine where your application will run most often. The TUNE level must always be greater or equal to the ARCH level because you will want to tune an application for a machine on which it can run. The compiler enforces this by adjusting TUNE up rather than ARCH down. TUNE does not specify where an application can run and it affects optimization only.

For example, if you have production machines that are z15® and disaster recovery (DR) machines that are z14, you should compile with ARCH(12) and TUNE(13). In this way, your programs will run well on the DR machines and run as fast as possible in production.

Note: If the specified TUNE level is lower than the specified ARCH level, the compiler adjusts the TUNE level to match the ARCH level.

Related references  
ARCH