관리 메뉴

HAMA 블로그

OP_TEST_REDUCTION.cpp 본문

OpenMP,PPL

OP_TEST_REDUCTION.cpp

[하마] 이승현 (wowlsh93@gmail.com) 2014. 8. 27. 22:42

/*

#include <stdio.h>

#include <stdlib.h>

#include <omp.h>

#include <boost/timer.hpp>



int num_steps=500000000; 




#define OPENMP

int main()

{

int i;

double x, step, sum = 0.0;

step = 1.0/(double) num_steps;


boost::timer t;


#ifdef NOOPENMP

for (i=0; i<num_steps; i++) 

{

x = (i+0.5) * step;

sum += 4.0/(1.0 + x*x);

}

#endif


#ifdef OPENMP


#pragma omp parallel for

for (i=0; i<num_steps; i++) 

{

x = (i+0.5) * step;

sum += 4.0/(1.0 + x*x);

}

#endif


#ifdef OPENMP_RE

#pragma omp parallel for private(x) reduction(+:sum)

for (i=0; i<num_steps; i++) 

{

x = (i+0.5) * step;

sum += 4.0/(1.0 + x*x);

}

#endif


double t2_insert = t.elapsed();

printf("time:  %.8lf \n", t2_insert);

printf("PI = %.8f (sum = %.8f)\n", step*sum, sum);


return EXIT_SUCCESS;

}

*/


'OpenMP,PPL' 카테고리의 다른 글

FOR_reduction.cpp  (0) 2014.08.27
FOR_default.cpp  (0) 2014.08.27
CRITICAL_SECTION.cpp  (0) 2014.08.27
Comments