Я правильно понимаю, что OMP_NESTED=true разрешает обрабатывать вот такие конструкции:
#pragma omp parallel for private(i)
for(i=0;i<5;++i)
#pragma omp parallel for private(j)
for(j=0;j<5;++j)
printf("i=%i j=%i нить %i\n",i,j,omp_get_thread_num());
А вот в таких конструкциях цикл по j будет всегда в одной нити:
#pragma omp parallel for private(i)
for(i=0;i<5;++i)
for(j=0;j<5;++j)
printf("i=%i j=%i нить %i\n",i,j,omp_get_thread_num());
P.S. Где нибудь доступен бесплатный openmp reference по всем директивам, функциям и переменным?