정렬된 (OpenMP 지시문)
아래는 병렬화 된 코드를 지정 합니다 순차 루프 다음과 같이 루프를 실행 해야 합니다.
#pragma omp ordered
structured-block
설명
주문 지시문의 동적 범위 안에 있어야는 (OpenMP)에 대 한 또는 에 대 한 병렬 로 구성는 주문 절.
주문 지시문 OpenMP 절을 지원 합니다.
자세한 내용은 2.6.6 구문의 정렬를 참조하십시오.
예제
// omp_ordered.cpp
// compile with: /openmp
#include <stdio.h>
#include <omp.h>
static float a[1000], b[1000], c[1000];
void test(int first, int last)
{
#pragma omp for schedule(static) ordered
for (int i = first; i <= last; ++i) {
// Do something here.
if (i % 2)
{
#pragma omp ordered
printf_s("test() iteration %d\n", i);
}
}
}
void test2(int iter)
{
#pragma omp ordered
printf_s("test2() iteration %d\n", iter);
}
int main( )
{
int i;
#pragma omp parallel
{
test(1, 8);
#pragma omp for ordered
for (i = 0 ; i < 5 ; i++)
test2(i);
}
}