[ create a new paste ] login | about

Link: http://codepad.org/37qg4I9n    [ raw code | fork ]

joel_f - C++, pasted on Mar 5:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
template<class Xpr, class T, class Reducer>
T fold(Xpr expr, T init, Reducer reducer)
 {
   #pragma omp parallel
   {
     T pinit = init;
     #pragma omp for nowait
     for(int n=1; n<=size; ++n)
       pinit = reducer(pinit, run(expr, n) );
     #pragma omp atomic
     init = reducer(pinit,init);
   }
   return init;
 }


Create a new paste based on this one


Comments: