インテル® コンパイラーは、異なるアーキテクチャーにおいてさまざまな精度と予測とともに、浮動小数点演算を最適化するオプションを提供します。ここでは、このようなコンパイラー・オプションを示し、サポートするアーキテクチャーとオペレーティング・システムに関する情報を提供します。
Linux* および Mac OS* X |
Windows* |
説明 |
---|---|---|
-fp-model |
/fp |
浮動小数点演算で使用されるセマンティクスを指定します。値は、precise、fast [=1/2]、strict、source、double、extended、[no-]except (Linux* および MacOS* X)、except[-] (Windows*) です。
|
-fp-speculation |
/Qfp-speculation |
浮動小数点演算のスペキュレーション・モードを指定します。値は、fast、safe、strict、off です。
|
-prec-div、-no-prec-div |
/Qprec-div、/Qprec-div- |
精度の高い浮動小数点除算を使用します。浮動小数点除算の範囲および精度を維持することが重要な場合は、このオプションを使用して除算の最適化を無効にしてください。このオプションを使用すると、精度は上がりますが、若干パフォーマンスが落ちます。 -no-prec-div (Linux および Mac OS X) または /Qprec-div- (Windows) を指定した場合、除算を逆数の乗算に変換する最適化処理が有効になります。これらの結果は、完全な IEEE 準拠の除算よりも多少精度が低いものになります。
|
-complex-limited-range |
/Qcomplex-limited-range |
COMPLEX 型のデータを使用するいくつかの算術演算で、基本代数展開の使用を有効にします。このオプションを使用すると、COMPLEX 型の算術を多く使用するプログラムにおいてパフォーマンスが向上する場合があります。ただし、指数範囲の極値が正しく計算されない可能性があります。例えば、単精度浮動小数点演算では、値 >1.E20 または <1.E-20 の場合、正しく計算されません。
|
-ftz |
/Qftz |
デノーマル結果を 0 にフラッシュします。デフォルトの動作はアーキテクチャーによって異なります。詳細は、各トピックを参照してください。
|
-fpe、-fpe-all |
/fpe、/fpe-all |
デフォルトでは、Fortran コンパイラーはすべての浮動小数点例外を無効にします。浮動小数点アンダーフローがデフォルトで漸次アンダーフローか突発アンダーフローかはアーキテクチャーによって異なります。 これらのオプションは、どの例外が Fortran コンパイラーによって有効にされるかを制御します。また、浮動小数点アンダーフローが漸次アンダーフローか突発アンダーフローかも制御します。 |
Linux および Mac OS X |
Windows |
説明 |
---|---|---|
-prec-sqrt |
/Qprec-sqrt |
平方根の精度を上げますが、このオプションを使用すると多少速度に影響する場合があります。
|
-pc |
/Qpc |
x87 コントロール・ワードの浮動小数点の仮数部の精度を変更します。 アプリケーションでは、エントリーポイントとして PROGRAM を使用していなければなりません。このオプションで PROGRAM が含まれるソースファイルをコンパイルする必要があります。
|
-rcd |
/Qrcd |
浮動小数点から整数への変換における丸めモードの変更を無効にします。
|
-fp-port |
/Qfp-port |
代入時およびキャスト時に、浮動小数点値をソースの精度に丸めます。
|
-mp1 |
/Qprec |
このオプションは、比較の前に、ソースプログラムで指定された精度に浮動小数点値を丸めます。また、-prec-div と -prec-sqrt (Linux および Mac OS X) または /Qprec-div と /Qprec-sqrt (Windows) を使用することを意味します。
|
Linux |
Windows |
説明 |
---|---|---|
-fma、-no-fma |
/Qfma、/Qfma- |
浮動小数点積和/積差演算の 1 つの演算への縮約を有効/無効にします。 |
-fp-relaxed |
/Qfp-relaxed |
sqrt() 関数や divide 演算のような算術関数で、より高速な、しかし多少精度が低いコードシーケンスを使用します。厳密な IEEE* 精度と比較した場合、このオプションを使用すると、そのような関数による浮動小数点演算精度が少し低くなります (通常は、最下位の桁に制限されます)。
|