- 01 Aug, 2013 1 commit
-
-
When judging if origin and target process are on the same node, using vc->node_id flag instead of vc->ch.is_local flag. Flag 'is_local' is not correct because it is defined in nemesis, not in CH3. Flag 'node_id' is defined in CH3. Note that for ch3:sock, even if origin and target are on the same node, they are not within the same SHM region. Currently ch3:sock is filtered out by checking shm_allocated flag first. In future we need to figure out a way to check if origin and target are within the same "SHM comm". Signed-off-by:
Pavan Balaji <balaji@mcs.anl.gov>
-
- 28 Jul, 2013 2 commits
-
-
Delete decrementing ref count in SHM RMA operations, but add conditions in operaiton issue routines. In RMA operation issue routines, judge if shm_allocate == 1 and target vc is local, if so, do not add reference count on datatypes, because they will not be referenced by the progress engine, but will be completed directly by origin. Signed-off-by:
Pavan Balaji <balaji@mcs.anl.gov>
-
The code in inline functions is moved from operation routines in ch3u_rma_ops.c and ch3u_rma_acc_ops.c. By moving them in inline functions, both operation routines and synchronization routines can call them. Signed-off-by:
Pavan Balaji <balaji@mcs.anl.gov>
-
- 07 May, 2013 1 commit
-
-
James Dinan authored
Myrank was caching win_ptr->comm_ptr->rank, so we now use that directly rather than caching it in the MPID_Win object. Reviewer: balaji
-
- 11 Jan, 2013 1 commit
-
-
James Dinan authored
Communication operations on shared memory windows now perform the op directly on the shared buffer. This requried the addition of a per-window interprocess mutex to ensure that atomics and accumulates are performed atomically. Reviewer: buntinas
-
- 10 Jan, 2013 1 commit
-
-
James Dinan authored
These gotos had no effect -- they went to the same place we get to by ending the conditional block. Reviewer: none
-
- 08 Nov, 2012 3 commits
-
-
James Dinan authored
This fixes the performance regression that was introduced by concatenation of per-target lists. Reviewer: goodell
-
James Dinan authored
The fence_cnt field in MPID_Win is not a counter, it's a flag that indicates if fence has been called. Reviewer: buntinas
-
James Dinan authored
This patch adds code to track the RMA epoch state of the local process. Currently, we are tracking the synchronization states that are allowed by MPICH; in the future, we may want to restrict this to only states that are allowed by the standard. The addition of epoch tracking has several benefits: * It allows us to detect synchronization errors (implemented in this patch). * It allows us to implement lock_all more efficiently (implemented in this patch). * It will allow us to distinguish between active and passive target epochs and avoid O(p) op list concatenation (future patch). Reviewer: balaji
-
- 05 Nov, 2012 4 commits
-
-
James Dinan authored
Updated get_accumulate implementation to properly handle NO_OP operations; currently, we dispatch these as get operations. As a part of this change, the op issue code was also gathered into a macro to reduce copy-paste across all of the synchronization functions. Reviewer: goodell
-
James Dinan authored
Reviewer: goodell
-
James Dinan authored
The use of a dense array is a temporary measure to support the reference implementation. This will be much improved by ticket #1735. Reviewer: goodell
-
James Dinan authored
In this patch, I have refactored the RMA ops list again to use the MPL UTList doubly-linked list and to treat the list as a proper object. This should set us up to work with multiple lists, as we will soon have one list per target. Doubly-linking the list is a big help in terms of maintainability (no more prevNext pointers) and flexibility (better implementation of request-based ops and other optimizations). Reviewer: goodell
-
- 23 Oct, 2012 1 commit
-
-
James Dinan authored
Refactored RMA ops enqueue/dequeue operations into inline functions to reduce copy/paste code. Added extra safety checks that will be needed as we renovate for MPI-3. Reviewer: goodell
-
- 11 Oct, 2012 3 commits
-
-
James Dinan authored
Reviewer: goodell
-
James Dinan authored
-
James Dinan authored
-
- 10 Oct, 2012 1 commit
-
-
David Goodell authored
By setting "indent-tabs-mode:nil" we should hopefully begin to slowly squeeze out hard tabs from the source without a disruptive (to downstream projects) whitespace-fixing change. No reviewer.
-
- 25 Sep, 2012 1 commit
-
-
Pavan Balaji authored
No reviewer.
-
- 19 Sep, 2012 1 commit
-
-
Pavan Balaji authored
Reviewed by buntinas.
-
- 07 Sep, 2012 1 commit
-
-
James Dinan authored
Adds implementation of atomic fetch-and-op operation and several test cases. Reviewer: buntinas
-
- 05 Sep, 2012 1 commit
-
-
James Dinan authored
Reviewer: buntinas
-
- 30 Aug, 2012 1 commit
-
-
James Dinan authored
This patch adds support for the new MPI-3 compare-and-swap routine. The implementation embeds the data into the packet header to reduce the number of messages. Reviewer: buntinas
-
- 23 Aug, 2012 2 commits
-
-
James Dinan authored
Pulled bit manipulation arithmetic into macros for converting handles to indices in MPIR_Op and MPIR_Op_check_dtype function pointer tables. Reviewer: buntinas
-
James Dinan authored
This is an first step in implementing MPI_Get_accumulate. Currently, only communication with self is supported. Reviewer: buntinas
-