[cig-commits] [commit] rajesh-petsc-schur: Changed the shape of E->parallel.EXCHANGE_sNODE as part of caps_per_proc_removal (b5ac2c9)
cig_noreply at geodynamics.org
cig_noreply at geodynamics.org
Wed Nov 5 19:13:05 PST 2014
Repository : https://github.com/geodynamics/citcoms
On branch : rajesh-petsc-schur
Link : https://github.com/geodynamics/citcoms/compare/464e1b32299b15819f93efd98d969cddb84dfe51...f97ae655a50bdbd6dac1923a3471ee4dae178fbd
>---------------------------------------------------------------
commit b5ac2c96c26f3e3cad2f4e895b3bb40a9aed14fb
Author: Rajesh Kommu <rajesh.kommu at gmail.com>
Date: Wed Sep 24 11:29:07 2014 -0700
Changed the shape of E->parallel.EXCHANGE_sNODE as part of caps_per_proc_removal
>---------------------------------------------------------------
b5ac2c96c26f3e3cad2f4e895b3bb40a9aed14fb
lib/Full_parallel_related.c | 18 +++++++++---------
lib/Instructions.c | 2 +-
lib/Regional_parallel_related.c | 12 ++++++------
lib/global_defs.h | 2 +-
4 files changed, 17 insertions(+), 17 deletions(-)
diff --git a/lib/Full_parallel_related.c b/lib/Full_parallel_related.c
index d4d654e..914954c 100644
--- a/lib/Full_parallel_related.c
+++ b/lib/Full_parallel_related.c
@@ -768,7 +768,7 @@ void full_parallel_communication_routs_s(E)
for (k=1;k<=E->parallel.NUM_sNODE[lev].pass[kkk];k++) {
lnode = k;
node = (E->parallel.NODE[lev][CPPR][lnode].bound[ii]-1)/noz + 1;
- E->parallel.EXCHANGE_sNODE[lev][CPPR][k].pass[kkk] = node;
+ E->parallel.EXCHANGE_sNODE[lev][k].pass[kkk] = node;
} /* end for node k */
} /* end for first 4 communications */
@@ -777,7 +777,7 @@ void full_parallel_communication_routs_s(E)
for (k=1;k<=E->parallel.NUM_sNODE[lev].pass[kkk];k++) {
node = E->parallel.EXCHANGE_NODE[lev][k].pass[kkk]/noz + 1;
- E->parallel.EXCHANGE_sNODE[lev][CPPR][k].pass[kkk] = node;
+ E->parallel.EXCHANGE_sNODE[lev][k].pass[kkk] = node;
} /* end for node k */
} /* end for the last FOUR communications */
@@ -793,7 +793,7 @@ void full_parallel_communication_routs_s(E)
fprintf(E->fp_out,"proc %d and pass %d to proc %d with %d node\n",E->parallel.me,k,E->parallel.PROCESSOR[lev].pass[k],E->parallel.NUM_sNODE[lev].pass[k]);
fprintf(E->fp_out,"Node:\n");
for (ii=1;ii<=E->parallel.NUM_sNODE[lev].pass[k];ii++)
- fprintf(E->fp_out,"%d %d\n",ii,E->parallel.EXCHANGE_sNODE[lev][CPPR][ii].pass[k]);
+ fprintf(E->fp_out,"%d %d\n",ii,E->parallel.EXCHANGE_sNODE[lev][ii].pass[k]);
}
}
@@ -1197,9 +1197,9 @@ void full_exchange_snode_f(struct All_variables *E, float *U1, float *U2, int le
/* pack */
for (j=1;j<=E->parallel.NUM_sNODE[lev].pass[k];j++) {
- S[kk][j-1] = U1[ E->parallel.EXCHANGE_sNODE[lev][CPPR][j].pass[k] ];
+ S[kk][j-1] = U1[ E->parallel.EXCHANGE_sNODE[lev][j].pass[k] ];
S[kk][j-1+E->parallel.NUM_sNODE[lev].pass[k]]
- = U2[ E->parallel.EXCHANGE_sNODE[lev][CPPR][j].pass[k] ];
+ = U2[ E->parallel.EXCHANGE_sNODE[lev][j].pass[k] ];
}
if (E->parallel.PROCESSOR[lev].pass[k]!=E->parallel.me) {
@@ -1227,8 +1227,8 @@ void full_exchange_snode_f(struct All_variables *E, float *U1, float *U2, int le
else {
kk=k;
for (j=1;j<=E->parallel.NUM_sNODE[lev].pass[k];j++) {
- U1[ E->parallel.EXCHANGE_sNODE[lev][CPPR][j].pass[k] ] += S[kk][j-1];
- U2[ E->parallel.EXCHANGE_sNODE[lev][CPPR][j].pass[k] ] +=
+ U1[ E->parallel.EXCHANGE_sNODE[lev][j].pass[k] ] += S[kk][j-1];
+ U2[ E->parallel.EXCHANGE_sNODE[lev][j].pass[k] ] +=
S[kk][j-1+E->parallel.NUM_sNODE[lev].pass[k]];
}
}
@@ -1243,8 +1243,8 @@ void full_exchange_snode_f(struct All_variables *E, float *U1, float *U2, int le
if (E->parallel.PROCESSOR[lev].pass[k]!=E->parallel.me)
if (E->parallel.PROCESSOR[lev].pass[k]!=-1) {
for (j=1;j<=E->parallel.NUM_sNODE[lev].pass[k];j++) {
- U1[ E->parallel.EXCHANGE_sNODE[lev][CPPR][j].pass[k] ] += R[kk][j-1];
- U2[ E->parallel.EXCHANGE_sNODE[lev][CPPR][j].pass[k] ] +=
+ U1[ E->parallel.EXCHANGE_sNODE[lev][j].pass[k] ] += R[kk][j-1];
+ U2[ E->parallel.EXCHANGE_sNODE[lev][j].pass[k] ] +=
R[kk][j-1+E->parallel.NUM_sNODE[lev].pass[k]];
}
}
diff --git a/lib/Instructions.c b/lib/Instructions.c
index 2c9e3ae..512e2c3 100644
--- a/lib/Instructions.c
+++ b/lib/Instructions.c
@@ -1083,7 +1083,7 @@ void allocate_common_vars(E)
- E->parallel.EXCHANGE_sNODE[i][CPPR] = (struct PASS *) malloc((nozl+2)*sizeof(struct PASS));
+ E->parallel.EXCHANGE_sNODE[i] = (struct PASS *) malloc((nozl+2)*sizeof(struct PASS));
E->parallel.NODE[i][CPPR] = (struct BOUND *) malloc((nxyz+2)*sizeof(struct BOUND));
E->parallel.EXCHANGE_NODE[i]= (struct PASS *) malloc((nxyz+2)*sizeof(struct PASS));
E->parallel.EXCHANGE_ID[i] = (struct PASS *) malloc((nxyz*E->mesh.nsd+3)*sizeof(struct PASS));
diff --git a/lib/Regional_parallel_related.c b/lib/Regional_parallel_related.c
index 627ea32..eec1d82 100644
--- a/lib/Regional_parallel_related.c
+++ b/lib/Regional_parallel_related.c
@@ -649,7 +649,7 @@ void regional_parallel_communication_routs_s(E)
for (k=1;k<=E->parallel.NUM_sNODE[lev].pass[kkk];k++) {
lnode = k; /* due to lnode increases in horizontal di first */
node = (E->parallel.NODE[lev][CPPR][lnode].bound[ii]-1)/noz+1;
- E->parallel.EXCHANGE_sNODE[lev][CPPR][k].pass[kkk] = node;
+ E->parallel.EXCHANGE_sNODE[lev][k].pass[kkk] = node;
} /* end for node k */
} /* end for loop p */
@@ -678,7 +678,7 @@ void regional_parallel_communication_routs_s(E)
for (kk=1;kk<=E->parallel.NUM_sNODE[lev].pass[kkk];kk++) {
lnode = kk; /* due to lnode increases in horizontal di first */
node = (E->parallel.NODE[lev][CPPR][lnode].bound[ii]-1)/noz+1;
- E->parallel.EXCHANGE_sNODE[lev][CPPR][kk].pass[kkk] = node;
+ E->parallel.EXCHANGE_sNODE[lev][kk].pass[kkk] = node;
} /* end for node kk */
} /* end for loop p */
@@ -844,9 +844,9 @@ void regional_exchange_snode_f(struct All_variables *E, float *U1,
for (k=1;k<=E->parallel.sTNUM_PASS[lev];k++) {
for (j=1;j<=E->parallel.NUM_sNODE[lev].pass[k];j++) {
- S[k][j-1] = U1[ E->parallel.EXCHANGE_sNODE[lev][CPPR][j].pass[k] ];
+ S[k][j-1] = U1[ E->parallel.EXCHANGE_sNODE[lev][j].pass[k] ];
S[k][j-1+E->parallel.NUM_sNODE[lev].pass[k]]
- = U2[ E->parallel.EXCHANGE_sNODE[lev][CPPR][j].pass[k] ];
+ = U2[ E->parallel.EXCHANGE_sNODE[lev][j].pass[k] ];
}
MPI_Sendrecv(S[k],2*E->parallel.NUM_sNODE[lev].pass[k],MPI_FLOAT,
@@ -856,8 +856,8 @@ void regional_exchange_snode_f(struct All_variables *E, float *U1,
E->parallel.world,&status);
for (j=1;j<=E->parallel.NUM_sNODE[lev].pass[k];j++) {
- U1[ E->parallel.EXCHANGE_sNODE[lev][CPPR][j].pass[k] ] += R[k][j-1];
- U2[ E->parallel.EXCHANGE_sNODE[lev][CPPR][j].pass[k] ] +=
+ U1[ E->parallel.EXCHANGE_sNODE[lev][j].pass[k] ] += R[k][j-1];
+ U2[ E->parallel.EXCHANGE_sNODE[lev][j].pass[k] ] +=
R[k][j-1+E->parallel.NUM_sNODE[lev].pass[k]];
}
diff --git a/lib/global_defs.h b/lib/global_defs.h
index d2242b7..cc72a4f 100644
--- a/lib/global_defs.h
+++ b/lib/global_defs.h
@@ -254,7 +254,7 @@ struct Parallel {
int sTNUM_PASS[MAX_LEVELS];
struct PASS NUM_sNODE[MAX_LEVELS];
struct PASS sPROCESSOR[MAX_LEVELS];
- struct PASS *EXCHANGE_sNODE[MAX_LEVELS][NCS];
+ struct PASS *EXCHANGE_sNODE[MAX_LEVELS];
};
struct CAP {
More information about the CIG-COMMITS
mailing list