[mpich-commits] [mpich] MPICH primary repository branch, master, updated. v3.2b3-3-g27a5232

Service Account noreply at mpich.org
Tue Jun 2 22:27:20 CDT 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  27a5232a498ea4d853fb4a778fa7f3b0291fc774 (commit)
      from  7dab7cd3a893e252133c326e8f096986d77b168a (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/27a5232a498ea4d853fb4a778fa7f3b0291fc774

commit 27a5232a498ea4d853fb4a778fa7f3b0291fc774
Author: Xin Zhao <xinzhao3 at illinois.edu>
Date:   Tue Jun 2 20:33:17 2015 -0500

    Issue extended packet header in OFI netmod.
    
    In e50bec3af65eb54005dd0150599a387a52dd1fda, we add code in Nemesis
    and TCP/Portals4/MXM netmods to issue extended packet header stored
    in the request. In this patch, we did the similiar modification to
    OFI netmod.
    
    Signed-off-by: Pavan Balaji <balaji at anl.gov>

diff --git a/src/mpid/ch3/channels/nemesis/netmod/ofi/ofi_msg.c b/src/mpid/ch3/channels/nemesis/netmod/ofi/ofi_msg.c
index dcad1d4..fe5ddae 100644
--- a/src/mpid/ch3/channels/nemesis/netmod/ofi/ofi_msg.c
+++ b/src/mpid/ch3/channels/nemesis/netmod/ofi/ofi_msg.c
@@ -187,15 +187,21 @@ int MPID_nem_ofi_iSendContig(MPIDI_VC_t * vc,
     char *pack_buffer;
     uint64_t match_bits;
     MPID_Request *cts_req;
+    MPIDI_msg_sz_t buf_offset = 0;
 
     BEGIN_FUNC(FCNAME);
     MPIU_Assert(hdr_sz <= (MPIDI_msg_sz_t) sizeof(MPIDI_CH3_Pkt_t));
     MPID_nem_ofi_init_req(sreq);
-    pkt_len = sizeof(MPIDI_CH3_Pkt_t) + data_sz;
+    pkt_len = sizeof(MPIDI_CH3_Pkt_t) + sreq->dev.ext_hdr_sz + data_sz;
     pack_buffer = MPIU_Malloc(pkt_len);
     MPIU_Assert(pack_buffer);
     MPIU_Memcpy(pack_buffer, hdr, hdr_sz);
-    MPIU_Memcpy(pack_buffer + sizeof(MPIDI_CH3_Pkt_t), data, data_sz);
+    buf_offset += sizeof(MPIDI_CH3_Pkt_t);
+    if (sreq->dev.ext_hdr_sz > 0) {
+        MPIU_Memcpy(pack_buffer + buf_offset, sreq->dev.ext_hdr_ptr, sreq->dev.ext_hdr_sz);
+        buf_offset += sreq->dev.ext_hdr_sz;
+    }
+    MPIU_Memcpy(pack_buffer + buf_offset, data, data_sz);
     START_COMM();
     END_FUNC_RC(FCNAME);
 }
@@ -211,6 +217,7 @@ int MPID_nem_ofi_SendNoncontig(MPIDI_VC_t * vc,
     uint64_t match_bits;
     MPID_Request *cts_req;
     MPIDI_msg_sz_t first, last;
+    MPIDI_msg_sz_t buf_offset = 0;
 
     BEGIN_FUNC(FCNAME);
     MPIU_Assert(hdr_sz <= (MPIDI_msg_sz_t) sizeof(MPIDI_CH3_Pkt_t));
@@ -218,11 +225,16 @@ int MPID_nem_ofi_SendNoncontig(MPIDI_VC_t * vc,
     first = sreq->dev.segment_first;
     last = sreq->dev.segment_size;
     data_sz = sreq->dev.segment_size - sreq->dev.segment_first;
-    pkt_len = sizeof(MPIDI_CH3_Pkt_t) + data_sz;
+    pkt_len = sizeof(MPIDI_CH3_Pkt_t) + sreq->dev.ext_hdr_sz + data_sz;
     pack_buffer = MPIU_Malloc(pkt_len);
     MPIU_Assert(pack_buffer);
     MPIU_Memcpy(pack_buffer, hdr, hdr_sz);
-    MPID_Segment_pack(sreq->dev.segment_ptr, first, &last, pack_buffer + sizeof(MPIDI_CH3_Pkt_t));
+    buf_offset += sizeof(MPIDI_CH3_Pkt_t);
+    if (sreq->dev.ext_hdr_sz > 0) {
+        MPIU_Memcpy(pack_buffer + buf_offset, sreq->dev.ext_hdr_ptr, sreq->dev.ext_hdr_sz);
+        buf_offset += sreq->dev.ext_hdr_sz;
+    }
+    MPID_Segment_pack(sreq->dev.segment_ptr, first, &last, pack_buffer + buf_offset);
     START_COMM();
     MPID_nem_ofi_poll(MPID_NONBLOCKING_POLL);
     END_FUNC_RC(FCNAME);

-----------------------------------------------------------------------

Summary of changes:
 src/mpid/ch3/channels/nemesis/netmod/ofi/ofi_msg.c |   20 ++++++++++++++++----
 1 files changed, 16 insertions(+), 4 deletions(-)


hooks/post-receive
-- 
MPICH primary repository


More information about the commits mailing list