インテル® C++ コンパイラー XE 13.1 ユーザー・リファレンス・ガイド
"#pragma loop count" を指定されたループの前に追加します。このプラグマは、ループの並列化を有効にするためのループの最小反復回数を指定します。
この最小反復回数はターゲット・アーキテクチャーによって異なり、生成されるメッセージに表示されます。
次の例について考えてみます。
#define N 10000
float A[N], B[N];
void foo(int n)
{
int i;
for (i =0; i < n; i++) {
A[i] = A[i] + B[i] * B[i] + 1.5;
}
}
この例では、n が並列化の効果を得るのに十分な大きさであるかどうか分からないため、コンパイラーはこのループを並列化しません。安全であることが分かっている場合は、次のようにプラグマを追加できます。
#define N 10000
float A[N], B[N];
void foo(int n)
{
int i;
#pragma loop count min(128)
for (i =0; i < n; i++) {
A[i] = A[i] + B[i] * B[i] + 1.5;
}
}