Sun Studio 12 Update 1: Fortran ユーザーズガイド

3.4.28 -fma={none| fused}

(SPARC) 浮動小数点演算、融合演算、積和演算命令の自動生成を有効にします。-fma=none は、これらの命令の生成を無効にします。-fma=fused は、コンパイラが浮動小数点演算、融合演算、積和演算命令を使用して、コードのパフォーマンスを改善する機会を見つけようとすることを許可します。デフォルトは -fma=none です。

融合した積和演算命令を生成するには、コンパイラに対して -xarch=sparcfmaf および最適化レベルが -xO2 以上に設定されていることが最低限必要です。融合した積和演算命令が生成された場合は、これらの命令をサポートしていないプラットフォームでプログラムが実行されないように、コンパイラはバイナリプログラムにマークを付けます。

融合した積和により、積と和の間の中間丸め手順がなくなります。このため、-fma=fused を使用してコンパイルすると、精度は低下するよりも向上する傾向にありますが、プログラムが生成する結果が異なる場合があります。