[mpich-commits] [mpich] MPICH primary repository branch, master, updated. v3.2-22-gb20e825
Service Account
noreply at mpich.org
Fri Dec 11 19:43:08 CST 2015
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "MPICH primary repository".
The branch, master has been updated
via b20e8255c86502b5baf4881c8bddde16f8a2011c (commit)
from 92ec188ec6af7b875e29370e1d76b1199877cd95 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
http://git.mpich.org/mpich.git/commitdiff/b20e8255c86502b5baf4881c8bddde16f8a2011c
commit b20e8255c86502b5baf4881c8bddde16f8a2011c
Author: Charles J Archer <charles.j.archer at intel.com>
Date: Mon Nov 9 16:32:30 2015 -0800
test/mpi/rma: use lower bound for window calculations
* Several tests are failing when the window bounds are checked.
The RMA's on datatypes with lower bounds may write past the
end of the window.
Signed-off-by: Ken Raffenetti <raffenet at mcs.anl.gov>
diff --git a/test/mpi/rma/accfence1.c b/test/mpi/rma/accfence1.c
index 1b1a40b..f4b8930 100644
--- a/test/mpi/rma/accfence1.c
+++ b/test/mpi/rma/accfence1.c
@@ -19,7 +19,7 @@ int main(int argc, char *argv[])
int minsize = 2, count;
MPI_Comm comm;
MPI_Win win;
- MPI_Aint extent;
+ MPI_Aint extent, lb;
MTestDatatype sendtype, recvtype;
MTest_Init(&argc, &argv);
@@ -43,7 +43,8 @@ int main(int argc, char *argv[])
recvtype.InitBuf(&recvtype);
MPI_Type_extent(recvtype.datatype, &extent);
- MPI_Win_create(recvtype.buf, recvtype.count * extent,
+ MPI_Type_lb(recvtype.datatype, &lb);
+ MPI_Win_create(recvtype.buf, recvtype.count * extent + lb,
(int) extent, MPI_INFO_NULL, comm, &win);
MPI_Win_fence(0, win);
if (rank == source) {
diff --git a/test/mpi/rma/accpscw1.c b/test/mpi/rma/accpscw1.c
index de6e4fa..67ab3b4 100644
--- a/test/mpi/rma/accpscw1.c
+++ b/test/mpi/rma/accpscw1.c
@@ -19,7 +19,7 @@ int main(int argc, char *argv[])
int minsize = 2, count;
MPI_Comm comm;
MPI_Win win;
- MPI_Aint extent;
+ MPI_Aint extent, lb;
MPI_Group wingroup, neighbors;
MTestDatatype sendtype, recvtype;
@@ -44,7 +44,8 @@ int main(int argc, char *argv[])
recvtype.InitBuf(&recvtype);
MPI_Type_extent(recvtype.datatype, &extent);
- MPI_Win_create(recvtype.buf, recvtype.count * extent,
+ MPI_Type_lb(recvtype.datatype, &lb);
+ MPI_Win_create(recvtype.buf, recvtype.count * extent + lb,
(int) extent, MPI_INFO_NULL, comm, &win);
MPI_Win_get_group(win, &wingroup);
if (rank == source) {
diff --git a/test/mpi/rma/epochtest.c b/test/mpi/rma/epochtest.c
index 69cfdcb..bd07732 100644
--- a/test/mpi/rma/epochtest.c
+++ b/test/mpi/rma/epochtest.c
@@ -41,7 +41,7 @@ int main(int argc, char **argv)
int minsize = 2, count;
MPI_Comm comm;
MPI_Win win;
- MPI_Aint extent;
+ MPI_Aint extent,lb;
MTestDatatype sendtype, recvtype;
int onlyInt = 0;
@@ -71,7 +71,8 @@ int main(int argc, char **argv)
recvtype.InitBuf(&recvtype);
MPI_Type_extent(recvtype.datatype, &extent);
- MPI_Win_create(recvtype.buf, recvtype.count * extent,
+ MPI_Type_lb(recvtype.datatype, &lb);
+ MPI_Win_create(recvtype.buf, recvtype.count * extent + lb,
extent, MPI_INFO_NULL, comm, &win);
/* To improve reporting of problems about operations, we
* change the error handler to errors return */
diff --git a/test/mpi/rma/getfence1.c b/test/mpi/rma/getfence1.c
index 342ba67..d8aa9d9 100644
--- a/test/mpi/rma/getfence1.c
+++ b/test/mpi/rma/getfence1.c
@@ -22,7 +22,7 @@ static inline int test(MPI_Comm comm, int rank, int source, int dest,
{
int errs = 0, err;
int disp_unit;
- MPI_Aint extent;
+ MPI_Aint extent, lb;
MPI_Win win;
MTestPrintfMsg(1,
@@ -37,8 +37,9 @@ static inline int test(MPI_Comm comm, int rank, int source, int dest,
sendtype->printErrors = 1;
MPI_Type_extent(sendtype->datatype, &extent);
+ MPI_Type_lb(sendtype->datatype, &lb);
disp_unit = extent < INT_MAX ? extent : 1;
- MPI_Win_create(sendtype->buf, sendtype->count * extent, disp_unit, MPI_INFO_NULL, comm, &win);
+ MPI_Win_create(sendtype->buf, sendtype->count * extent + lb, disp_unit, MPI_INFO_NULL, comm, &win);
MPI_Win_fence(0, win);
if (rank == source) {
/* The source does not need to do anything besides the
diff --git a/test/mpi/rma/putfence1.c b/test/mpi/rma/putfence1.c
index 103ce77..3670265 100644
--- a/test/mpi/rma/putfence1.c
+++ b/test/mpi/rma/putfence1.c
@@ -21,7 +21,7 @@ static inline int test(MPI_Comm comm, int rank, int source, int dest,
MTestDatatype * sendtype, MTestDatatype * recvtype)
{
int errs = 0, err;
- MPI_Aint extent;
+ MPI_Aint extent, lb;
MPI_Win win;
MTestPrintfMsg(1,
@@ -32,7 +32,8 @@ static inline int test(MPI_Comm comm, int rank, int source, int dest,
/* Make sure that everyone has a recv buffer */
recvtype->InitBuf(recvtype);
MPI_Type_extent(recvtype->datatype, &extent);
- MPI_Win_create(recvtype->buf, recvtype->count * extent, extent, MPI_INFO_NULL, comm, &win);
+ MPI_Type_lb(recvtype->datatype, &lb);
+ MPI_Win_create(recvtype->buf, recvtype->count * extent + lb, extent, MPI_INFO_NULL, comm, &win);
MPI_Win_fence(0, win);
if (rank == source) {
/* To improve reporting of problems about operations, we
diff --git a/test/mpi/rma/putpscw1.c b/test/mpi/rma/putpscw1.c
index b642695..d46c8f9 100644
--- a/test/mpi/rma/putpscw1.c
+++ b/test/mpi/rma/putpscw1.c
@@ -19,7 +19,7 @@ int main(int argc, char *argv[])
int minsize = 2, count;
MPI_Comm comm;
MPI_Win win;
- MPI_Aint extent;
+ MPI_Aint extent, lb;
MPI_Group wingroup, neighbors;
MTestDatatype sendtype, recvtype;
@@ -44,7 +44,8 @@ int main(int argc, char *argv[])
recvtype.InitBuf(&recvtype);
MPI_Type_extent(recvtype.datatype, &extent);
- MPI_Win_create(recvtype.buf, recvtype.count * extent,
+ MPI_Type_lb(recvtype.datatype, &lb);
+ MPI_Win_create(recvtype.buf, recvtype.count * extent + lb,
(int) extent, MPI_INFO_NULL, comm, &win);
MPI_Win_get_group(win, &wingroup);
if (rank == source) {
-----------------------------------------------------------------------
Summary of changes:
test/mpi/rma/accfence1.c | 5 +++--
test/mpi/rma/accpscw1.c | 5 +++--
test/mpi/rma/epochtest.c | 5 +++--
test/mpi/rma/getfence1.c | 5 +++--
test/mpi/rma/putfence1.c | 5 +++--
test/mpi/rma/putpscw1.c | 5 +++--
6 files changed, 18 insertions(+), 12 deletions(-)
hooks/post-receive
--
MPICH primary repository
More information about the commits
mailing list