次のオプションは、Itanium(R) ベース・システムにおける浮動小数点計算用にコンパイラーの最適化を制御します。以下のオプションは IA-32 システムおよびインテル(R) EM64T 対応システムでは利用できません。
Mac OS*: ここで説明されているオプションはサポートされていません。
Windows* |
Linux* |
効果 |
---|---|---|
/Qftz |
-ftz |
このオプションは、デノーマル値がアプリケーション動作に影響を与えない場合に使用します。アプリケーションが漸次アンダーフロー・モードの場合に、デノーマル結果をゼロにフラッシュします。このオプションでデノーマル値をゼロにフラッシュすると、アプリケーション全体のパーフォーマンスが向上する可能性があります。 FTZ モードをオンにするには、このオプションを main プログラムが含まれているソースに対してのみ使用する必要があります。初期スレッドおよびそのプロセスによってその後に作成されるあらゆるスレッドは、FTZ モードで動作します。 SSE 命令を使用すると、パフォーマンスの問題が発生します。その他の SSE 特有の効果については、この後のコンパイラー・オプション・トピックを参照してください。
プログラムの数値動作で好ましくない結果が出力された場合、次のようにコマンドラインでこのオプションを使用して FTZ モードをオフに設定できます。これにより、他の最適化の利点をそのまま活用できます。 詳細は、次のトピックを参照してください。
|
/QIPF-fma |
-IPF-fma |
浮動小数点積和/積差演算の 1 つの演算への縮約を有効または無効にします。-fp-model strict (Linux) または /fp:strict (Windows) が指定されている場合を除き、コンパイラーは可能な限りこれらの演算を縮約します。-fp-model strict (Linux) または /fp:strict (Windows) オプションは、縮約を無効にします。 例えば、-fp-model strict (Linux) または /fp:strict (Windows) と -IPF-fma (Linux) または /QIPF-fma (Windows) を共に使用すると、コンパイラーは縮約演算を有効にします。
詳細は、次のトピックを参照してください。
|
/QIPF-fp-speculation |
-IPF-fp-speculation |
デフォルト。浮動小数点演算のスペキュレーションを有効にするようにコンパイラーに指示します。 -fp-model strict または -fp-model except (Linux)、/fp:strict または /fp:except (Windows) オプションを使用すると、スペキュレーション・モードは strict に設定され、上書きすることはできません。ただし、-fp-model fast (Linux)、/fp:fast (Windows) オプションを使用すると、-IPF-fp-speculation (Linux)、/QIPF-fp-speculation (Windows) オプションを使用してスペキュレーションを制限することができます。 詳細は、次のトピックを参照してください。
|
/QIPF-fp-relaxed |
-IPF-fp-relaxed |
sqrt() 関数や divide 演算のような数値演算関数で、より高速な、しかし多少精度が低いコードシーケンスを使用します。厳密な IEEE* 精度と比較した場合、このオプションを使用すると、そのような関数による浮動小数点演算精度が少し低くなります (通常は、最下位の桁数に制限されます)。 -fp-model (Linux) または /fp (Windows) オプションを使用すると、-no-IPF-fp-relaxed (Linux) または /QIPF_fp_relaxed- (Windows) オプションが無効になります。しかし、-fp-model (Linux) または /fp (Windows) は、明示的な設定は上書きしません。 詳細は、次のトピックを参照してください。
|