fltconsistency

 

浮動小数点の一貫性を向上させます。

IDE オプション

Windows: [Floating-Point (浮動小数点)] > [Floating-Point Consistency (浮動小数点の整合性)]

Linux: なし

Mac OS X: [Floating-Point (浮動小数点)] > [Improve Floating-point Consistency (浮動小数点演算の一貫性の向上)]

アーキテクチャー

IA-32、インテル® 64、IA-64 アーキテクチャー

構文

Linux および Mac OS X:

-fltconsistency

-nofltconsistency

Windows:

/fltconsistency

/nofltconsistency

引数

なし

デフォルト

nofltconsistency

浮動小数点の一貫性の向上を有効にしません。この設定では、浮動小数点数結果の一貫性が多少損なわれますが、精度とランタイム・パフォーマンスが向上します。

説明

このオプションは、浮動小数点の一貫性を向上させます。実行速度が多少遅くなる場合があります。このオプションで、最適化を制限し、宣言された精度を維持します。また、算術ライブラリー関数のインライン展開を無効にします。

浮動小数点演算の順序変更はありません。また、各浮動小数点の結果は、次の計算に使用するために浮動小数点プロセッサーで保持されずに、ターゲットの変数に格納されます。

例えば、コンパイラーでは、分母の逆数によって浮動小数点数の除算計算を乗算に変えられます。ただし、これによって、浮動小数点数の除算計算の結果が多少変わることがあります。

浮動小数点演算による中間結果には、完全な 80 ビットの内部精度が維持されます。さらに、X87 浮動小数点レジスターのすべてのスピル/リロードは、制御できないスピル/リロードによって精度が変わらないように、内部フォーマットを使用して行われます。

このオプションを指定すると、プログラムのコンパイルに次の影響が生じます。

このオプションは、デフォルトの浮動小数点最適化フラグを使用するとパフォーマンスの低下を引き起こします。

Windows システムでこの問題を回避するには、/Qprec オプションを使用します。このオプションは、パフォーマンスに影響をほとんど与えることなく、デフォルトの浮動小数点精度に近い精度を実現します。

浮動小数点演算のセマンティクスを制御する場合は、-fp-model (Linux および Mac OS X) または /fp (Windows) の使用を推奨します。

代替オプション

fltconsistency

Linux および Mac OS X: -mp (これは古いオプションです)、-mieee-fp

Windows: /Op (これは古いオプションです)

nofltconsistency

Linux および Mac OS X: -mno-ieee-fp

Windows: なし

関連情報