strength reduction optimizations

strength reduction optimizations

Ritratto di Izaak Beekman

Is it reasonable to assume most modern compilers will see float**2 and replace it with float*float? I'm trying to improve the readability of someone else's code, without sacrificing performance, although I'm sure it's been quite some time since the code has been profiled on current hardware.

-Zaak
3 post / 0 nuovi
Ultimo contenuto
Per informazioni complete sulle ottimizzazioni del compilatore, consultare l'Avviso sull'ottimizzazione
Ritratto di Izaak Beekman

just to clarify, the actual variable is a multidimensional array with a longer name, and is being indexed/sliced, so typing the equivalent of float*float is much longer than typing the exponentiation.

-Zaak

Yes, all high quallty Fortran compilers I've seen in the last decade are expanding and optimizing **2 (some will do it even with the decimal point implying a real data type exponent).
You could try a limited test, simply assure that no exponentiation function call is introduced when you run nm on the .o file.

Accedere per lasciare un commento.