aboutsummaryrefslogtreecommitdiff
path: root/src/GenericRK.c
diff options
context:
space:
mode:
authorschnetter <schnetter@578cdeb0-5ea1-4b81-8215-5a3b8777ee0b>2008-09-23 15:46:30 +0000
committerschnetter <schnetter@578cdeb0-5ea1-4b81-8215-5a3b8777ee0b>2008-09-23 15:46:30 +0000
commit0c77e02f695962169f1f8d35f6b2bb6cbcb7ffa9 (patch)
treec052541a4fc66dfa7f8669f41d6fed38bf56b1ba /src/GenericRK.c
parent2eadd221eb3ab023777758e93a9dd14463e33d2b (diff)
Parallelise loops with OpenMP.
git-svn-id: http://svn.cactuscode.org/arrangements/CactusNumerical/MoL/trunk@129 578cdeb0-5ea1-4b81-8215-5a3b8777ee0b
Diffstat (limited to 'src/GenericRK.c')
-rw-r--r--src/GenericRK.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/GenericRK.c b/src/GenericRK.c
index f9622c7..6fc2dc9 100644
--- a/src/GenericRK.c
+++ b/src/GenericRK.c
@@ -140,6 +140,7 @@ void MoL_GenericRKAdd(CCTK_ARGUMENTS)
beta);
#endif
+#pragma omp parallel for
for (index = 0; index < totalsize; index++)
{
UpdateVar[index] = (*Original_Delta_Time) / cctkGH->cctk_timefac * beta * RHSVar[index];
@@ -203,6 +204,7 @@ void MoL_GenericRKAdd(CCTK_ARGUMENTS)
if ( (alpha > MoL_Tiny)||(alpha < -MoL_Tiny) )
{
+#pragma omp parallel for
for (index = 0; index < totalsize; index++)
{
UpdateVar[index] += alpha * ScratchVar[index];
@@ -248,6 +250,7 @@ void MoL_GenericRKAdd(CCTK_ARGUMENTS)
MoL_Intermediate_Steps -
(*MoL_Intermediate_Step)) * totalsize, totalsize);
#endif
+#pragma omp parallel for
for (index = 0; index < totalsize; index++)
{
ScratchVar[index] = UpdateVar[index];
@@ -278,6 +281,7 @@ void MoL_GenericRKAdd(CCTK_ARGUMENTS)
RHSComplexVar = (CCTK_COMPLEX const *)CCTK_VarDataPtrI(cctkGH, 0,
RHSVariableIndex[var]);
+#pragma omp parallel for
for (index = 0; index < totalsize; index++)
{
UpdateComplexVar[index] = CCTK_CmplxMul(Complex_Delta_Time,
@@ -310,6 +314,7 @@ void MoL_GenericRKAdd(CCTK_ARGUMENTS)
if ( (alpha > MoL_Tiny)||(alpha < -MoL_Tiny) )
{
+#pragma omp parallel for
for (index = 0; index < totalsize; index++)
{
UpdateComplexVar[index] =
@@ -333,6 +338,7 @@ void MoL_GenericRKAdd(CCTK_ARGUMENTS)
MoL_Intermediate_Steps -
(*MoL_Intermediate_Step)) *
totalsize];
+#pragma omp parallel for
for (index = 0; index < totalsize; index++)
{
ScratchComplexVar[index] = UpdateComplexVar[index];
@@ -365,6 +371,7 @@ void MoL_GenericRKAdd(CCTK_ARGUMENTS)
arraytotalsize = ArrayScratchSizes[var];
+#pragma omp parallel for
for (index = 0; index < arraytotalsize; index++)
{
UpdateVar[index] = (*Original_Delta_Time) / cctkGH->cctk_timefac * beta * RHSVar[index];
@@ -393,6 +400,7 @@ void MoL_GenericRKAdd(CCTK_ARGUMENTS)
if ( (alpha > MoL_Tiny)||(alpha < -MoL_Tiny) )
{
+#pragma omp parallel for
for (index = 0; index < arraytotalsize; index++)
{
UpdateVar[index] += alpha * ScratchVar[index];
@@ -441,6 +449,7 @@ void MoL_GenericRKAdd(CCTK_ARGUMENTS)
CurrentArrayScratchSize +
arrayscratchlocation);
#endif
+#pragma omp parallel for
for (index = 0; index < arraytotalsize; index++)
{
ScratchVar[index] = UpdateVar[index];