Per-subrroutine optimization level

Per-subrroutine optimization level

Portrait de Keith R.

I have a problem with a particular piece of code (which is not mine to simply rearrange at will) which causes ifc's optimizer to consume larger and larger amounts of memory until either it crashes (at -O3) or simply locks the machine up for 5 minutes paging (at -O2).

The code in question consists of very large nested case statement, which are actually machine-generated. To be fair to Intel, many other compilers exhibit exactly the same behaviour.

Is there any way of selectively reducing the optimization level for a single subroutine in a module? The Cray compilers had a directive to do this, and I wonder if anything similar exists for ifc.

2 posts / 0 nouveau(x)
Dernière contribution
Reportez-vous à notre Notice d'optimisation pour plus d'informations sur les choix et l'optimisation des performances dans les produits logiciels Intel.
Portrait de Martyn Corden (Intel)

I don't know of a way to change the optimization level for just part of a module. I suggest you submit a small test case containing a very large, nested case statement to Intel Premier Support at
Of course, workarounds would not be difficult if you were able to change the source, or split the module.


Connectez-vous pour laisser un commentaire.