[mpich2-commits] r7426 - in mpich2/branches/release/mpich2-1.3.x/src/mpid/ch3: channels/nemesis/nemesis/netmod/wintcp include src
thakur at mcs.anl.gov
thakur at mcs.anl.gov
Mon Nov 8 14:02:35 CST 2010
Author: thakur
Date: 2010-11-08 14:02:35 -0600 (Mon, 08 Nov 2010)
New Revision: 7426
Modified:
mpich2/branches/release/mpich2-1.3.x/src/mpid/ch3/channels/nemesis/nemesis/netmod/wintcp/socksm.c
mpich2/branches/release/mpich2-1.3.x/src/mpid/ch3/include/mpidrma.h
mpich2/branches/release/mpich2-1.3.x/src/mpid/ch3/src/ch3u_rma_sync.c
Log:
applied r7425 from trunk. RMA fixes
Property changes on: mpich2/branches/release/mpich2-1.3.x/src/mpid/ch3/channels/nemesis/nemesis/netmod/wintcp/socksm.c
___________________________________________________________________
Modified: svn:mergeinfo
- /mpich2/branches/dev/ckpt/src/mpid/ch3/channels/nemesis/nemesis/netmod/wintcp/socksm.c:5050
/mpich2/branches/dev/ckpt2/src/mpid/ch3/channels/nemesis/nemesis/netmod/wintcp/socksm.c:5057-6537
/mpich2/branches/dev/ftb/src/mpid/ch3/channels/nemesis/nemesis/netmod/wintcp/socksm.c:5661-5730
/mpich2/branches/dev/lapi/src/mpid/ch3/channels/nemesis/nemesis/netmod/wintcp/socksm.c:5817
/mpich2/branches/dev/win_rrvm/src/mpid/ch3/channels/nemesis/nemesis/netmod/wintcp/socksm.c:6416,6428
/mpich2/branches/dev/wintcp_async_progress/src/mpid/ch3/channels/nemesis/nemesis/netmod/wintcp/socksm.c:5008-5009,5123,5555-5559,5561-5564,5566-5567,5570,5577-5581,5613-5616,5619
/mpich2/branches/release/mpich2-1.1.1/src/mpid/ch3/channels/nemesis/nemesis/netmod/wintcp/socksm.c:5022,5032,5110,5113,5140-5141
/mpich2/branches/release/mpich2-1.2/src/mpid/ch3/channels/nemesis/nemesis/netmod/wintcp/socksm.c:5406
/mpich2/trunk/src/mpid/ch3/channels/nemesis/nemesis/netmod/wintcp/socksm.c:7355-7359,7366-7367,7371-7402,7406-7409,7411-7416,7419-7420
+ /mpich2/branches/dev/ckpt/src/mpid/ch3/channels/nemesis/nemesis/netmod/wintcp/socksm.c:5050
/mpich2/branches/dev/ckpt2/src/mpid/ch3/channels/nemesis/nemesis/netmod/wintcp/socksm.c:5057-6537
/mpich2/branches/dev/ftb/src/mpid/ch3/channels/nemesis/nemesis/netmod/wintcp/socksm.c:5661-5730
/mpich2/branches/dev/lapi/src/mpid/ch3/channels/nemesis/nemesis/netmod/wintcp/socksm.c:5817
/mpich2/branches/dev/win_rrvm/src/mpid/ch3/channels/nemesis/nemesis/netmod/wintcp/socksm.c:6416,6428
/mpich2/branches/dev/wintcp_async_progress/src/mpid/ch3/channels/nemesis/nemesis/netmod/wintcp/socksm.c:5008-5009,5123,5555-5559,5561-5564,5566-5567,5570,5577-5581,5613-5616,5619
/mpich2/branches/release/mpich2-1.1.1/src/mpid/ch3/channels/nemesis/nemesis/netmod/wintcp/socksm.c:5022,5032,5110,5113,5140-5141
/mpich2/branches/release/mpich2-1.2/src/mpid/ch3/channels/nemesis/nemesis/netmod/wintcp/socksm.c:5406
/mpich2/trunk/src/mpid/ch3/channels/nemesis/nemesis/netmod/wintcp/socksm.c:7355-7359,7366-7367,7371-7402,7406-7409,7411-7416,7419-7420,7425
Modified: mpich2/branches/release/mpich2-1.3.x/src/mpid/ch3/include/mpidrma.h
===================================================================
--- mpich2/branches/release/mpich2-1.3.x/src/mpid/ch3/include/mpidrma.h 2010-11-08 15:06:34 UTC (rev 7425)
+++ mpich2/branches/release/mpich2-1.3.x/src/mpid/ch3/include/mpidrma.h 2010-11-08 20:02:35 UTC (rev 7426)
@@ -68,4 +68,8 @@
MPIDI_VC_t * vc;
struct MPIDI_PT_single_op *pt_single_op; /* to store info for lock-put-unlock optimization */
} MPIDI_Win_lock_queue;
+
+/* Routine use to tune RMA optimizations */
+void MPIDI_CH3_RMA_SetAccImmed( int flag );
+
#endif
Modified: mpich2/branches/release/mpich2-1.3.x/src/mpid/ch3/src/ch3u_rma_sync.c
===================================================================
--- mpich2/branches/release/mpich2-1.3.x/src/mpid/ch3/src/ch3u_rma_sync.c 2010-11-08 15:06:34 UTC (rev 7425)
+++ mpich2/branches/release/mpich2-1.3.x/src/mpid/ch3/src/ch3u_rma_sync.c 2010-11-08 20:02:35 UTC (rev 7426)
@@ -228,7 +228,7 @@
MPIU_INSTR_DURATION_INCR(winfence_issue,0,total_op_count);
MPIU_INSTR_DURATION_MAX(winfence_issue,1,total_op_count);
i = 0;
- curr_ptr = win_ptr->rma_ops_list_head;
+ curr_ptr = win_ptr->rma_ops_list_head;
prevNextPtr = &win_ptr->rma_ops_list_head;
while (curr_ptr != NULL)
{
@@ -259,6 +259,7 @@
mpi_errno = MPIDI_CH3I_Send_contig_acc_msg(curr_ptr, win_ptr,
source_win_handle, target_win_handle,
&curr_ptr->request );
+ if (mpi_errno) { MPIU_ERR_POP(mpi_errno); }
break;
case (MPIDI_RMA_GET):
mpi_errno = MPIDI_CH3I_Recv_rma_msg(curr_ptr, win_ptr,
@@ -284,8 +285,8 @@
curr_ptr = tmpptr;
}
else {
+ prevNextPtr = &curr_ptr->next;
curr_ptr = curr_ptr->next;
- prevNextPtr = &curr_ptr->next;
/* FIXME: We could at least occassionally try to wait
on completion of the pending send requests rather than
focus on filling the queues. */
@@ -1322,7 +1323,7 @@
i = 0;
prevNextPtr = &win_ptr->rma_ops_list_head;
- curr_ptr = win_ptr->rma_ops_list_head;
+ curr_ptr = win_ptr->rma_ops_list_head;
while (curr_ptr != NULL)
{
/* The completion counter at the target is decremented only on
@@ -1352,6 +1353,7 @@
mpi_errno = MPIDI_CH3I_Send_contig_acc_msg(curr_ptr, win_ptr,
source_win_handle, target_win_handle,
&curr_ptr->request );
+ if (mpi_errno) { MPIU_ERR_POP(mpi_errno); }
break;
case (MPIDI_RMA_GET):
mpi_errno = MPIDI_CH3I_Recv_rma_msg(curr_ptr, win_ptr,
@@ -1377,8 +1379,8 @@
curr_ptr = tmpptr;
}
else {
+ prevNextPtr = &curr_ptr->next;
curr_ptr = curr_ptr->next;
- prevNextPtr = &curr_ptr->next;
}
}
MPIU_INSTR_DURATION_END(wincomplete_issue);
@@ -1427,7 +1429,9 @@
/* Its hard to use the automatic allocator here, as those
macros are optimized for a known maximum number of items. */
MPIDI_RMA_ops *new_ptr;
+ MPIU_INSTR_DURATION_START(rmaqueue_alloc);
new_ptr = (MPIDI_RMA_ops *)MPIU_Malloc(sizeof(MPIDI_RMA_ops) );
+ MPIU_INSTR_DURATION_END(rmaqueue_alloc);
/* --BEGIN ERROR HANDLING-- */
if (!new_ptr) {
MPIU_CHKMEM_SETERR(mpi_errno,sizeof(MPIDI_RMA_ops),
@@ -1986,6 +1990,7 @@
mpi_errno = MPIDI_CH3I_Send_contig_acc_msg(curr_ptr, win_ptr,
source_win_handle, target_win_handle,
&curr_ptr->request );
+ if (mpi_errno) { MPIU_ERR_POP(mpi_errno); }
break;
case (MPIDI_RMA_GET):
mpi_errno = MPIDI_CH3I_Recv_rma_msg(curr_ptr, win_ptr,
@@ -2010,8 +2015,8 @@
curr_ptr = tmpptr;
}
else {
+ prevNextPtr = &curr_ptr->next;
curr_ptr = curr_ptr->next;
- prevNextPtr = &curr_ptr->next;
}
}
MPIU_INSTR_DURATION_END(winunlock_issue);
More information about the mpich2-commits
mailing list