scalprod.c 269 B

12345678910111213141516
  1. #include <omp.h>
  2. #ifdef __cplusplus
  3. extern "C"
  4. #endif
  5. void
  6. scalprod(int n, double* x, double* y, double* res)
  7. {
  8. int i;
  9. double res_v = 0.;
  10. #pragma omp parallel for reduction(+ : res_v)
  11. for (i = 0; i < n; ++i) {
  12. res_v += x[i] * y[i];
  13. }
  14. *res = res_v;
  15. }