From 0da3bf338180255d80a3a997bebe8445d4667a82 Mon Sep 17 00:00:00 2001 From: Shikhar Kumar Date: Tue, 9 Jul 2019 19:54:40 -0400 Subject: [PATCH] Try OMP parallelism --- src/cmfd_solver.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/cmfd_solver.cpp b/src/cmfd_solver.cpp index f7ef57546..c46ace3f7 100644 --- a/src/cmfd_solver.cpp +++ b/src/cmfd_solver.cpp @@ -101,6 +101,7 @@ int cmfd_linsolver_1g(const double* A_data, const double* b, double* x, for (int irb = 0; irb < 2; irb++) { // Loop around matrix rows +#pragma omp parallel for for (int irow = 0; irow < cmfd::dim; irow++) { int g, i, j, k; matrix_to_indices(irow, g, i, j, k); @@ -167,6 +168,7 @@ int cmfd_linsolver_2g(const double* A_data, const double* b, double* x, for (int irb = 0; irb < 2; irb++) { // Loop around matrix rows +#pragma omp parallel for for (int irow = 0; irow < cmfd::dim; irow+=2) { int g, i, j, k; matrix_to_indices(irow, g, i, j, k); @@ -255,6 +257,7 @@ int cmfd_linsolver_ng(const double* A_data, const double* b, double* x, std::vector tmpx {x, x+cmfd::dim}; // Loop around matrix rows +#pragma omp parallel for for (int irow = 0; irow < cmfd::dim; irow++) { // Get index of diagonal for current row int didx = get_diagonal_index(irow);