ここで説明されているオプションは、IA-32、インテル(R) EM64T、およびインテル(R) Itanium(R) アーキテクチャーの浮動小数点演算でさまざまな精度の最適化を提供します。オプションがすべてのアーキテクチャーでサポートされていない場合、説明欄でサポートされているアーキテクチャーを示します。
表のオプションを使用すると、アプリケーションのパフォーマンスが低下する可能性があります。一般に、アプリケーションのパフォーマンスを向上させるには、浮動小数点の精度を多少犠牲にする必要があります。
ここで説明されている浮動小数点オプションは、浮動小数点演算でさまざまな精度の最適化を提供します。-O0 (Linux*) または /Od (Windows*) は、これらの最適化を無効にします。
Windows |
Linux |
説明 |
---|---|---|
/fp |
-fp-model |
浮動小数点演算で使用されるセマンティクスを指定します。 デフォルトのモデルは fast で、浮動小数点演算を行うときに強力な最適化を有効にします。これらの最適化は速度を向上させますが、浮動小数点演算の精度に多少影響します。 異なるモデルおよび例の詳細な説明については、次のトピックを参照してください。
|
/Op |
-mp |
浮動小数点の最適化を制限し、宣言された精度を維持します。このオプションを使用すると、実行速度が多少遅くなる場合があります。代わりに、-fp-model (Linux) または /fp (Windows) オプションを使用してください。 IA-32 およびインテル EM64T
詳細は、次のトピックを参照してください。
-fp-model (Linux) または /fp (Windows) は、このオプションに影響を与えます。 |
/Qprec |
-mp1 |
浮動小数点の精度を向上させます。このオプションは、パフォーマンスへの影響が小さく、-fp-model precise (Linux) または /fp:precise (Windows) オプションよりも禁止される最適化処理が少なくなります。 このオプションは、コンパイラーが NaN 比較セマンティクスを変更する最適化を行わないようにします。また、比較を行う前に、比較で使用するすべての値を、宣言された精度に切り捨てます。また、このオプションはライブラリー・ルーチンを使用して X87 超越命令より精度の高い結果を提供します。このオプションを指定すると、インテル・コンパイラーは高精度な除算および平方根演算を使用します。 -fp-model precise (Linux) または /fp:precise (Windows) オプションはこのオプションが有効であることを意味しますが、-fp-model fast (Linux) または /fp:fast (Windows) はこのオプションを無効にします。ただし、同じコマンドラインで両方のオプションが指定された場合、-fp-model fast (Linux) または /fp:fast (Windows) はこのオプションを無視しません。 詳細は、次のトピックを参照してください。
|