diff --git a/OpenMP/mppi.c b/OpenMP/mppi.c index 430f23c0a6e451f04b002a88adf8cb1f3c1ee058..da10b947a9f3be5f9c5dfa07ef14934df9d50a42 100644 --- a/OpenMP/mppi.c +++ b/OpenMP/mppi.c @@ -15,7 +15,6 @@ double pi; void main() { int i; - printf("%d\n",omp_get_max_threads()); double a,b,c,dt,mflops; struct timespec tstart,tend; clock_gettime(CLOCK_REALTIME,&tstart); @@ -24,13 +23,12 @@ void main() { c = 0.25; pi = 0; pi = 0; - #pragma omp parallel - #pragma omp for reduction(+:pi) + #pragma omp parallel for reduction(+:pi) for (i = 1; i <= NPTS; ++i) pi += a/((i-b)*(i-c)); clock_gettime(CLOCK_REALTIME,&tend); dt = (tend.tv_sec+tend.tv_nsec/1e9)-(tstart.tv_sec+tstart.tv_nsec/1e9); mflops = NPTS*5.0/(dt*1e6); - printf("NPTS = %d, pi = %f\n",NPTS,pi); + printf("NPTS = %d, pi = %f, threads = %d\n",NPTS,pi,omp_get_max_threads()); printf("time = %f, estimated MFlops = %f\n",dt,mflops); }