SIMD (Single Instruction, Multiple Data) 命令を使用して実行するループを含む並列領域を指定します。
構文
#pragma omp parallel for simd [clause[, clause, ...]] |
for-loop
引数
clause |
次のいずれかです。
|
for loop |
次の形式でなければなりません。
for (init-expr; test-expr; incr-expr)
structured-block
|
説明
この宣言子は、1 つの SIMD ループ構造を含む並列領域のショートカット形式です。
例
次の例は、この宣言子を指定し、SIMD 命令を使用して単純な for ループを並列に実行する方法を示します。
#pragma omp parallel for simd schedule(static,10)
{
for (i=0; i<N; i++) {
a[i] = b[i] * c[i];
}
}