インテル® Fortran コンパイラー XE 13.1 ユーザー・リファレンス・ガイド

ガイド付き自動並列化の概要

インテル® コンパイラーのガイド付き自動並列化機能は、コンパイラーの自動ベクトル化および並列化機能を利用してデータ操作の効率を向上させるための変更内容についてアドバイスを提供し、シリアルコードのアプリケーション・パフォーマンスの向上を支援します。ツールの名前には「自動並列化」という言葉が含まれていますが、実行パフォーマンスを向上するためにスレッド化されたコードを実装する必要はありません。また、コードがスレッド化または並列化されている必要もありません。

この機能を使用するのに、プロシージャー間の解析やプロファイルに基づくフィードバックのような高度な最適化手法を使用する必要はありません。通常使うコンパイラー・オプションに加えて、-guide (Linux*) または /Qguide (Windows*) オプションを使用するだけで、このガイド付き自動並列化機能を有効にできます。ただし、-O2 (Linux*) または /O2 (Windows*) 以上の最適化オプションを指定してコンパイルしてください。 ガイド付き自動並列化実行時は、オブジェクト・ファイルや実行ファイルは生成されません。

デバッグモード (Windows*: /Zi、Linux*: -g) では、最適化レベルのデフォルトは /Od (Windows*) または -Od (Linux*) です。このため、/O2 または -O2 (またはより高い最適化レベル) をコマンドラインで明示的に指定する必要があります。

-diag-disable または /Qdiag-disable オプションを、-guide あるいは /Qguide オプションとともに使用して、コンパイラーに特定の診断メッセージを出力しないように指示できます。例えば、/Qguide, /Qdiag-disable:30534 オプションを指定すると、コンパイラーは診断メッセージ 30534 を出力しません。 -diag-disable または /Qdiag-disable はコンパイラーの警告に対するのと同じように動作します。

推奨されたコード変更を行うか、推奨されたコンパイラー・オプションを使用して、ガイド付き自動並列化ツールのアドバイスに従う場合は、-guide または /Qguide オプションを使用しないでプログラムを再コンパイルしてください。

ガイド付き自動並列化ツールにより提供されるアドバイスはオプションです。取り入れても、取り入れなくてもかまいません。通常、アドバイスは次の 3 つのカテゴリーに分けられます。

ガイド付き自動並列化オプションを -parallel (Linux*) または /Qparallel (Windows*) とともに使用すると、さらなる並列化を推奨するオプションが表示されることがあります。 また、ベクトル化のような最適化を有効にするアドバイスが表示されることもあります。

自動並列化を有効にせずに (つまり、–parallel または /Qparallel オプションを使用しないで) ガイド付き自動並列化オプションを使用すると、ベクトル化のような最適化を有効にするアドバイスのみ表示されます。 このアプローチは、並列化を使用せずにシングルスレッド・コードのパフォーマンスを向上したい場合や、コンパイラーの自動並列化に依存しないマルチスレッド・アプリケーションのパフォーマンスを向上したい場合に推奨します。

関連情報


このヘルプトピックについてのフィードバックを送信