Test which checks the omp parallel for private directive. 2.0 omp parallel for private omp parallel for reduction,omp flush #include #include #include "omp_testsuite.h" /*! Utility function to spend some time in a loop */ static void do_some_work (void){ int i; double sum = 0; for(i = 0; i < 1000; i++){ sum += sqrt (i); } } int omp_parallel_for_private(FILE * logFile){ int sum; int i; int i2; sum =0; i2=0; int known_sum; #pragma omp parallel for reduction(+:sum) schedule(static,1) private(i) private(i2) for (i=1;i<=LOOPCOUNT;i++) { i2 = i; #pragma omp flush do_some_work (); #pragma omp flush sum = sum + i2; } /*end of for*/ known_sum = (LOOPCOUNT * (LOOPCOUNT + 1)) / 2; return (known_sum == sum); } /* end of check_parallel_for_private */