-par-threshold{n} (Linux*) または /Qpar-threshold[:n] (Windows*) オプションは、並列ループ実行の有効性に基づいて、ループの自動並列化のしきい値を設定します。n の値は 0 から 100 までを設定できます。
-par-report (Linux) または /Qpar-report (Windows) オプションは、自動パラレライザーの診断レベル 0、1、2、または 3 を制御します。最も詳細な情報を得るには、レベル 3 を指定します。
例えば、次のコード例についての完全な診断レポートが必要であるとします。
例 1: サンプルコード |
---|
void no_par(void) { int i; int a[1000]; for (i=1; i<1000; i++) { a[i] = (i * 2) % i * 1 + sqrt(i); a[i] = a[i-1] + i; } } |
次のようなコマンドを使用して、-par-report3 (Linux) または /Qpar-report3 (Windows) を使用します。
プラットフォーム |
コマンド |
---|---|
Linux |
icpc -parallel -par-report3 -c diag_prog.c |
Windows |
icl /Qparallel /Qpar-report3 /c diag_prog.c |
-c (Linux) または /c (Windows) は、実行ファイルを生成しないでサンプルコードをコンパイルするようにコンパイラーに指示します。
次の例は、コンパイラーが上記のサンプルコードに対して生成した診断レポートを示しています。
例 2: サンプルコードのレポート出力 |
---|
procedure: no_par serial loop: line 29 flow data dependence from line 30 to line 31, due to "a" flow data dependence from line 31 to line 31, due to "a" |