[mpich-commits] [mpich] MPICH primary repository branch, master, updated. v3.2a2-98-g47ac6f6

Service Account noreply at mpich.org
Mon Jan 12 09:29:51 CST 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  47ac6f6b9fa738a06850982a321f9810ab23fff2 (commit)
      from  f544cbf9921e1536490129e37294253c2f47a989 (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/47ac6f6b9fa738a06850982a321f9810ab23fff2

commit 47ac6f6b9fa738a06850982a321f9810ab23fff2
Author: Ken Raffenetti <raffenet at mcs.anl.gov>
Date:   Thu Jan 8 13:03:15 2015 -0600

    rptls: do not send pause/unpause messages to self
    
    CH3 ensures that self communication does not go through the netmod,
    so there is no need for a process to pause/unpause itself.
    
    Signed-off-by: Antonio J. Pena <apenya at mcs.anl.gov>

diff --git a/src/mpid/ch3/channels/nemesis/netmod/portals4/rptl.c b/src/mpid/ch3/channels/nemesis/netmod/portals4/rptl.c
index 6e58e8f..74a39ee 100644
--- a/src/mpid/ch3/channels/nemesis/netmod/portals4/rptl.c
+++ b/src/mpid/ch3/channels/nemesis/netmod/portals4/rptl.c
@@ -142,7 +142,7 @@ static int poke_progress(void)
         /* if we are in a local AWAITING PAUSE ACKS state, see if we
          * can send out the unpause message */
         if (rptl->local_state == RPTL_LOCAL_STATE_AWAITING_PAUSE_ACKS &&
-            rptl->pause_ack_counter == rptl_info.world_size) {
+            rptl->pause_ack_counter == rptl_info.world_size - 1) {
             /* if we are over the max count limit, do not send an
              * unpause message yet */
             if (rptl->data.ob_curr_count > rptl->data.ob_max_count)
@@ -154,6 +154,8 @@ static int poke_progress(void)
             rptl->local_state = RPTL_LOCAL_STATE_ACTIVE;
 
             for (i = 0; i < rptl_info.world_size; i++) {
+                if (i == MPIDI_Process.my_pg_rank)
+                    continue;
                 mpi_errno = rptl_info.get_target_info(i, &id, rptl->data.pt, &data_pt, &control_pt);
                 if (mpi_errno) {
                     ret = PTL_FAIL;
@@ -182,6 +184,8 @@ static int poke_progress(void)
             /* send a pause ack message */
             assert(target->rptl);
             for (i = 0; i < rptl_info.world_size; i++) {
+                if (i == MPIDI_Process.my_pg_rank)
+                    continue;
                 /* find the target that has this target id and get the
                  * control portal information for it */
                 mpi_errno = rptl_info.get_target_info(i, &id, target->rptl->data.pt, &data_pt, &control_pt);
@@ -455,6 +459,8 @@ static int send_pause_messages(struct rptl *rptl)
     rptl->data.ob_max_count = rptl->data.ob_curr_count / 2;
 
     for (i = 0; i < rptl_info.world_size; i++) {
+        if (i == MPIDI_Process.my_pg_rank)
+            continue;
         mpi_errno = rptl_info.get_target_info(i, &id, rptl->data.pt, &data_pt, &control_pt);
         if (mpi_errno) {
             ret = PTL_FAIL;

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

Summary of changes:
 .../ch3/channels/nemesis/netmod/portals4/rptl.c    |    8 +++++++-
 1 files changed, 7 insertions(+), 1 deletions(-)


hooks/post-receive
-- 
MPICH primary repository


More information about the commits mailing list