Как вычесть годы из sysdate

OpenMP не может создавать параллельные области внутри параллельных областей. Это связано с тем, что OpenMP создает в начале программы параллельные потоки num_threads, в непараллельных областях остальные не используются и не спят. Они сделали это, так как частая генерация новых потоков довольно медленная по сравнению с пробуждением спящих потоков.

Поэтому вы должны распараллеливать только петли:

#include <omp.h>
#include "stdio.h"

int main()
{

omp_set_num_threads(10);

#pragma omp parallel for
    for(int i=0; i<5; i++) {
        printf("x %d\n", i);
    }

#pragma omp parallel for
    for(int i=0; i<5; i++) {
        printf(". %d\n", i);
    }
}
16
задан FlyingV 18 September 2017 в 21:08
поделиться