OpenMP または Sun の並列化命令およびプラグマを使用したときに、不正な結果が発生する可能性がある潜在的な並列化プログラミング関連の問題について警告を表示します。
-xopenmp と OpenMP API 命令、または -xexplicitpar と MP 並列化命令とともに使用します。
警告は、コンパイラが次の状態を検出したときに表示されます。
異なるループ繰り返し間でデータに依存関係がある場合に、MP 命令を使用して並列化されたループ
OpenMP 並列領域でのアクセスによってデータの競合が起きる可能性がある「共有」変数の宣言、並列領域に値があって並列領域のあとで使用される「スレッド固有」変数の宣言など、OpenMP のデータ共有属性節の問題のある使用
すべての並列化命令が問題なく処理される場合、警告は表示されません。
例:
cc -xopenmp -vpara any.c |
Sun Studio のコンパイラは OpenMP 2.5 API の並列化をサポートします。そのため、MP プラグマ命令は非推奨で、サポートされません。OpenMP API への移植については、『OpenMP API ユーザーズガイド』を参照してください。