- 28 Sep, 2014 2 commits
-
-
Xin Zhao authored
For Active Target synchronization, the original implementation does not guarantee the completion of all ops on target side when Win_wait / Win_fence returns. It is implemented using a counter, which is decremented when the last operation from that origin finishes. Win_wait / Win_fence waits until that counter reaches zero. Problem is that, when the last operation finishes, the previous GET-like operation (for example with a large data volume) may have not finished yet. This breaks the semantic of Win_wait / Win_fence. Here we fix this by increment the counter whenever we meet a GET-like operation, and decrement it when that operation finishes on target side. This will guarantee that when counter reaches zero and Win_wait / Win_fence returns, all operations are completed on the target. Signed-off-by:
Pavan Balaji <balaji@anl.gov>
-
- 26 Sep, 2014 1 commit
-
-
Kenneth Raffenetti authored
Libraries needed to build MPICH (and ROMIO) were missing from EXTERNAL_LIBS. This posed an issue when interlibrary dependencies were not supported, as in static builds, causing user programs to fail to build. Fixes #2172 Signed-off-by:
Pavan Balaji <balaji@anl.gov>
-
- 25 Sep, 2014 1 commit
-
-
Kenneth Raffenetti authored
Ignore tag matching when MPI_ANY_TAG is passed to a recv operation. Signed-off-by:
Sangmin Seo <sseo@anl.gov>
-
- 24 Sep, 2014 2 commits
-
-
Sameh Sharkawi authored
-
Min Si authored
Since flush call guarantees the completion of operations on target side, a memory barrier on target side is necessary in order to ensure all store instructions are exactly performed before that flush call finished on origin side. Signed-off-by:
Xin Zhao <xinzhao3@illinois.edu>
-
- 23 Sep, 2014 5 commits
-
-
Sameh Sharkawi authored
Added an empty implementation for MPID_Comm_get_all_failed_procs and MPID_Comm_revoke in pamid. Signed-off-by:
Michael Blocksome <blocksom@us.ibm.com>
-
Michael Blocksome authored
Signed-off-by:
Sameh Sharkawi <sssharka@us.ibm.com>
-
Michael Blocksome authored
Signed-off-by:
Sameh Sharkawi <sssharka@us.ibm.com>
-
Xin Zhao authored
Pass tail pointer to single direction linked-list API so that we optimize CONCAT and APPEND operations from O(N) to O(1). Note that we do not need MPL_LL_APPEND_VS2008 anymore because we no longer need to work around temporary variable. Similiarly, we can support MPL_LL_CONCAT for VS2008 now. Signed-off-by:
Pavan Balaji <balaji@anl.gov>
-
Xin Zhao authored
The original implementation of FENCE and PSCW does not guarantee the remote completion of issued-out RMA operations when MPI_Win_complete and MPI_Win_fence returns. They only guarantee the local completion of issued-out operations and the completion of coming-in operations. This is not correct if we try to get updated values on target side using synchronizations with MPI_MODE_NOCHECK. Here we modify it by making runtime wait for ACKs from all targets before returning from MPI_Win_fence and MPI_Win_complete. Signed-off-by:
Pavan Balaji <balaji@anl.gov>
-
- 22 Sep, 2014 1 commit
-
-
Pavan Balaji authored
The release.pl code was essentially a simple svn to git conversion. With our current testing model, some of this code is irrelevant. Signed-off-by:
Junchao Zhang <jczhang@mcs.anl.gov>
-
- 20 Sep, 2014 1 commit
-
-
- Changed MXM version that is supported to 3.1+ - Added additional debug output for iov - Added check for datatype mismatch during noncontiguous data Signed-off-by:
Igor Ivanov <Igor.Ivanov@itseez.com>
-
- 19 Sep, 2014 3 commits
-
-
Xin Zhao authored
Enable using MPI_Win_allocate, which by default turns on SHM window, in PSCW tests, so that we can test PSCW on SHM window. Signed-off-by:
Pavan Balaji <balaji@anl.gov>
-
Xin Zhao authored
If MPI_MODE_NOCHECK is passed to MPI_Win_start, we should not wait for synchronization from targets. Signed-off-by:
Pavan Balaji <balaji@anl.gov>
-
Xin Zhao authored
recv_post_msgs function on origin process is used to wait for synchronization from target processes, and it can be called from MPI_Win_start (for targets on SHM) and MPI_Win_complete (for targets not on SHM). Here we fix the bug so that origin will not wait for SHM targets again in MPI_Win_complete. Signed-off-by:
Pavan Balaji <balaji@anl.gov>
-
- 18 Sep, 2014 2 commits
-
-
Su Huang authored
Fixed a bug in MPID_Win_allgather to avoid passing 0 for memory registration (ibm) D199265 Signed-off-by:
Michael Blocksome <blocksom@us.ibm.com>
-
Rob Latham authored
long ago we thought there might be more than one process flushing data, but that has not borne out. the much faster MPI_Bcast will suffice, and we can avoid an MPI_Allreduce. Signed-off-by:
Paul Coffman <pkcoff@us.ibm.com>
-
- 16 Sep, 2014 3 commits
-
-
Rob Latham authored
comm_split might scale poorly on some systems, and we don't even use the resulting communicator. it was used as a marker, but we have enough other information.
-
Rob Latham authored
Ken was right: I was being too clever before. now, simply and more explicitly check if anyone has a NULL systemwide-hint info object.
-
Rob Latham authored
-
- 11 Sep, 2014 2 commits
-
-
Signed-off-by:
Rob Latham <robl@mcs.anl.gov>
-
Junchao Zhang authored
MPI_Pcontrol does not have the ierror argument. Fixes #2173 Signed-off-by:
William Gropp <wgropp@illinois.edu>
-
- 08 Sep, 2014 4 commits
-
-
Pavan Balaji authored
Signed-off-by:
Ken Raffenetti <raffenet@mcs.anl.gov>
-
Junchao Zhang authored
In MPI, the predefined named constant handles like MPI_INT are link-time but not necessarily compile-time constants, so they should not be used in switch/case clauses. If you do so, this kind of code only compiles with MPICH but not OpenMPI. Fixes #2169, #2171 Signed-off-by:
Rob Latham <robl@mcs.anl.gov>
-
Norio Yamaguchi authored
Deregister until the total amount released exceeds the requested length. If a registration fails after deregistering some memory regions, then deregister a next memory region and try to re-register.
-
Norio Yamaguchi authored
There is a maximum message size supported by HCA port. So it's necessary to divide a memory area to segments when a message size is larger than it.
-
- 05 Sep, 2014 1 commit
-
-
Igor Ivanov authored
Resolved warnings reported by --enable-strict configuration. Signed-off-by:
Igor Ivanov <Igor.Ivanov@itseez.com>
-
- 03 Sep, 2014 12 commits
-
-
Huiwei Lu authored
This patch implements the "eager" protocol used in MPI_Comm_idup. Without this patch, test/mpi/threads/comm/comm_idup will crash due to segmentation fault caused by livelock. It uses the same algorithm as multi-threaded MPIR_Get_contextid_sparse_group to avoid deadlock in multi-threaded context_id allocation, but in a nonblocking way. The nonblocking mechanism is explained in the comment of function sched_get_cid_nonblock. Fixes #2069 Signed-off-by:
Pavan Balaji <balaji@anl.gov>
-
Pavan Balaji authored
No reviewer.
-
Pavan Balaji authored
No reviewer.
-
Min Si authored
First, cache every SHM window created by Win_allocate or Win_allocate_shared into a global list, and unlink it in Win_free. Then, when user calls Win_create for a new window, check user specified buffer and comm. Enable local SHM communicaiton in the new window if it matches a cached SHM window. It is noted that all the shared resources are still freed by the original SHM window. Matching a SHM window must satisfy following two conditions: 1. The new node comm is equal to, or a subset of the SHM node comm. (Note that in the other cases where two node comms are overlapped, although the overlapped processes could be logically shared, it is not supported for now. To support this, we need to fist modify the implementation of RMA operations in order to remember shared status per target but not just compare its node_id). 2. The buffer is in the range of the SHM segment across local processes in original SHM window (a contigunous segment is mapped across local processes regardless of whether alloc_shared_noncontig is set). Resolves #2161 Signed-off-by:
Xin Zhao <xinzhao3@illinois.edu>
-
Rob Latham authored
No Reviewer
-
The code that chose the aggs for gpfsmpio_bridgeringagg was written very inefficiently resulting in a large performance degradation during the MPI_File_open. That code has been rewritten to squash the five torus dimensions into one dimension and to loop over that new representation fewer times. Now there is no performance degradation. Signed-off-by:
Rob Latham <robl@mcs.anl.gov>
-
Rob Latham authored
We do not often enough compile with --enable-strict on blue gene No Reviewer
-
Signed-off-by:
Ken Raffenetti <raffenet@mcs.anl.gov>
-
We had some settings in the nemesis subconfigure, which seems misplaced. Signed-off-by:
Ken Raffenetti <raffenet@mcs.anl.gov>
-
Pavan Balaji authored
Signed-off-by:
Ken Raffenetti <raffenet@mcs.anl.gov>
-
Pavan Balaji authored
We were mixing up external libraries, which are prebuilt, and internal libraries on which we need to add dependencies. This patch separates these out and only adds build dependencies on the internal libraries. Signed-off-by:
Ken Raffenetti <raffenet@mcs.anl.gov>
-
Pavan Balaji authored
The original MPICH code was directly adding external library dependencies into LIBS. This forces configure to use these libraries, thus requiring the user to point to these libraries through LD_LIBRARY_PATH (for shared libraries). This is unnecessary since those libraries are only needed when building the executables and not the rest of MPICH. Signed-off-by:
Ken Raffenetti <raffenet@mcs.anl.gov>
-