Jim, <div><br></div><div>My understanding of the test is that only a part of the loc_buf is overwritten by the MPI_Get operation (8*256 rather than 8*1024). </div><div><br></div><div>Now the test also tries to validate the rest of the loc_buf which is not affected by the MPI_Get operation. This check can fail or pass based on the original value of the loc_buf, which is never set. </div>
<div><br></div><div>Am I missing something basic?</div><div><br></div><div>Sreeram Potluri</div><br><div class="gmail_quote">On Mon, Dec 12, 2011 at 3:11 PM, Jim Dinan <span dir="ltr"><<a href="mailto:dinan@mcs.anl.gov" target="_blank">dinan@mcs.anl.gov</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Hi Sreeram,<br>
<br>
Setting the initial value of loc_buf shouldn't influence whether or not this test passes; the entire contents of loc_buf should be overwritten later by the call to MPI_Get. As Dave pointed out, setting this to 1.0+rank also weakens the test when run on one process since loc_buf will already contain the correct data. This is not the case when run on more processes since loc_buf should contain 1.0+((rank+1)%nproc)).<br>
<br>
This test has been in the MPICH test suite for several months and hasn't given us any trouble. Any chance that it's exercising a bug on your end?<br>
<br>
Best,<br>
~Jim.<div><div><br>
<br>
On 12/12/11 1:27 PM, Dave Goodell wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Sreeram,<br>
<br>
I'm not very familiar with this test, but this looks like an incorrect change to me. By setting the loc_buf (the origin "receive" buffer) to the expected value in this way then you open up a testing coverage gap if MPI_Get is replaced with a no-op function.<br>
<br>
If anything, this test could probably be strengthened by adding the following line in the same location that you recommend making your change:<br>
<br>
----8<----<br>
*(loc_buf + i) = -1.0;<br>
----8<----<br>
<br>
This way you don't assume anything about the values already in the buffer returned by MPI_Alloc_mem.<br>
<br>
Perhaps Jim can comment, since he wrote the test originally.<br>
<br>
-Dave<br>
<br>
On Dec 12, 2011, at 6:53 AM CST, sreeram potluri wrote:<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Hi Team,<br>
<br>
We have seen a validation error with the strided_get_indexed test in our internal testing with MVAPICH2. This appears to be an initialization issue with the benchmark. The path below fixes it in one way. Please accept the change if appropriate.<br>
<br>
Index: mpi/rma/strided_get_indexed.c<br>
==============================<u></u>==============================<u></u>=======<br>
--- mpi/rma/strided_get_indexed.c (revision 5064)<br>
+++ mpi/rma/strided_get_indexed.c (working copy)<br>
@@ -48,8 +48,10 @@<br>
if (rank == 0)<br>
if (verbose) printf("MPI RMA Strided Get Test:\n");<br>
<br>
- for (i = 0; i< XDIM*YDIM; i++)<br>
+ for (i = 0; i< XDIM*YDIM; i++) {<br>
*(win_buf + i) = 1.0 + rank;<br>
+ *(loc_buf + i) = 1.0 + rank;<br>
+ }<br>
<br>
MPI_Win_create(win_buf, bufsize, 1, MPI_INFO_NULL, MPI_COMM_WORLD,&buf_win);<br>
<br>
Regards<br>
Sreeram Potluri<br>
______________________________<u></u>_________________<br>
mpich-discuss mailing list <a href="mailto:mpich-discuss@mcs.anl.gov" target="_blank">mpich-discuss@mcs.anl.gov</a><br>
To manage subscription options or unsubscribe:<br>
<a href="https://lists.mcs.anl.gov/mailman/listinfo/mpich-discuss" target="_blank">https://lists.mcs.anl.gov/<u></u>mailman/listinfo/mpich-discuss</a><br>
</blockquote>
<br>
</blockquote>
______________________________<u></u>_________________<br>
mpich-discuss mailing list <a href="mailto:mpich-discuss@mcs.anl.gov" target="_blank">mpich-discuss@mcs.anl.gov</a><br>
To manage subscription options or unsubscribe:<br>
<a href="https://lists.mcs.anl.gov/mailman/listinfo/mpich-discuss" target="_blank">https://lists.mcs.anl.gov/<u></u>mailman/listinfo/mpich-discuss</a><br>
</div></div></blockquote></div><br>