нет параллельных потоков w ith openMP

Моя проблема в том, что у меня нет распараллеливания с openMP.

Моя система: убунту 11.4 Intel (R) Core (TM) i5 CPU M 430 @ 2,27 ГГц

Компилятор: g ++ Версия: 4.5.2 с флагом -fopenmp

С помощью этого кода я вижу, что существует только один поток:

int nthreads, tid, procs, maxt, inpar, dynamic, nested;

// Start parallel region 
#pragma omp parallel private(nthreads, tid)   {

// Obtain thread number    
tid = omp_get_thread_num();

// Only master thread does this    
if (tid == 0) 
{
printf("Thread %d getting environment info...\n", tid);

// Get environment information 
procs = omp_get_num_procs();
nthreads = omp_get_num_threads();
maxt = omp_get_max_threads();
inpar = omp_in_parallel();
dynamic = omp_get_dynamic();
nested = omp_get_nested();

// Print environment information 
printf("Number of processors = %d\n", procs);
printf("Number of threads = %d\n", nthreads);
printf("Max threads = %d\n", maxt);
printf("In parallel? = %d\n", inpar);
printf("Dynamic threads enabled? = %d\n", dynamic);
printf("Nested parallelism supported? = %d\n", nested);  
}
}

, потому что я вижу следующий вывод:

Number of processors = 4
Number of threads = 1
Max threads = 4
In parallel? = 0
Dynamic threads enabled? = 0
Nested parallelism supported? = 0

В чем проблема?

Кто-нибудь может помочь, пожалуйста?

5
задан Sankp 1 August 2011 в 14:26
поделиться