George Bosilca wrote:
Was there a real reason for this commit ? Was the previous code broken ?
I'm not aware of it ever breaking for anyone. However, it is a potential problem if the right combination of networks are used, since multiple btls are listening on the same tag.

It's not that I have anything against the fact that they all have different RML tags, but I do have something against this snippet:

+#define ORTE_RML_TAG_UDAPL                  25
+#define ORTE_RML_TAG_OPENIB                 26
+#define ORTE_RML_TAG_MVAPI                  27

I think that UDAPL, OPENIB, MVAPI should not appear anywhere in the ORTE layer ...
I tend to agree with you. However, the precedent has been set long ago to put all these constants in this file (i.e. there is ORTE_RML_TAG_WIREUP and ORTE_RML_TAG_SM_BACK_FILE_CREATED which are only used in OMPI), and it makes sense to have all tags defined in one place.

If we end up doing the runtime services layer, all the ompi tags would be defined in the RSL, and this will become moot.

Tim



   george.

On Aug 16, 2007, at 10:02 AM, tpr...@osl.iu.edu wrote:

Author: tprins
Date: 2007-08-16 10:02:35 EDT (Thu, 16 Aug 2007)
New Revision: 15881
URL: https://svn.open-mpi.org/trac/ompi/changeset/15881

Log:
Change it so that different components in orte use unique rml tags

Text files modified:
trunk/ompi/communicator/comm_cid.c | 8 ++++---- trunk/ompi/mca/btl/mvapi/btl_mvapi_endpoint.c | 4 ++-- trunk/ompi/mca/btl/openib/connect/btl_openib_connect_oob.c | 8 +++----- trunk/ompi/mca/btl/udapl/btl_udapl_endpoint.c | 4 ++-- trunk/orte/mca/rml/rml_types.h | 6 ++++++
   5 files changed, 17 insertions(+), 13 deletions(-)

Modified: trunk/ompi/communicator/comm_cid.c
====================================================================== ========
--- trunk/ompi/communicator/comm_cid.c  (original)
+++ trunk/ompi/communicator/comm_cid.c 2007-08-16 10:02:35 EDT (Thu, 16 Aug 2007)
@@ -758,12 +758,12 @@
         }

         if ( send_first ) {
-            rc = orte_rml.send_buffer(remote_leader, sbuf, 0, 0);
-            rc = orte_rml.recv_buffer(remote_leader, rbuf, 0, 0);
+ rc = orte_rml.send_buffer(remote_leader, sbuf, ORTE_RML_TAG_COMM_CID_INTRA, 0); + rc = orte_rml.recv_buffer(remote_leader, rbuf, ORTE_RML_TAG_COMM_CID_INTRA, 0);
         }
         else {
-            rc = orte_rml.recv_buffer(remote_leader, rbuf, 0, 0);
-            rc = orte_rml.send_buffer(remote_leader, sbuf, 0, 0);
+ rc = orte_rml.recv_buffer(remote_leader, rbuf, ORTE_RML_TAG_COMM_CID_INTRA, 0); + rc = orte_rml.send_buffer(remote_leader, sbuf, ORTE_RML_TAG_COMM_CID_INTRA, 0);
         }

if (ORTE_SUCCESS != (rc = orte_dss.unpack(rbuf, outbuf, &size_count, ORTE_INT))) {

Modified: trunk/ompi/mca/btl/mvapi/btl_mvapi_endpoint.c
====================================================================== ========
--- trunk/ompi/mca/btl/mvapi/btl_mvapi_endpoint.c       (original)
+++ trunk/ompi/mca/btl/mvapi/btl_mvapi_endpoint.c 2007-08-16 10:02:35 EDT (Thu, 16 Aug 2007)
@@ -322,7 +322,7 @@
     }

     /* send to endpoint */
- rc = orte_rml.send_buffer_nb(&endpoint->endpoint_proc-
proc_guid, buffer, ORTE_RML_TAG_DYNAMIC-1, 0,
+ rc = orte_rml.send_buffer_nb(&endpoint->endpoint_proc-
proc_guid, buffer, ORTE_RML_TAG_MVAPI, 0,
          mca_btl_mvapi_endpoint_send_cb, NULL);


@@ -694,7 +694,7 @@
 {
     orte_rml.recv_buffer_nb(
         ORTE_NAME_WILDCARD,
-        ORTE_RML_TAG_DYNAMIC-1,
+        ORTE_RML_TAG_MVAPI,
         ORTE_RML_PERSISTENT,
         mca_btl_mvapi_endpoint_recv,
         NULL);

Modified: trunk/ompi/mca/btl/openib/connect/btl_openib_connect_oob.c
====================================================================== ======== --- trunk/ompi/mca/btl/openib/connect/btl_openib_connect_oob.c (original) +++ trunk/ompi/mca/btl/openib/connect/btl_openib_connect_oob.c 2007-08-16 10:02:35 EDT (Thu, 16 Aug 2007)
@@ -39,8 +39,6 @@
     ENDPOINT_CONNECT_ACK
 } connect_message_type_t;

-#define OOB_TAG (ORTE_RML_TAG_DYNAMIC - 1)
-
 static int oob_init(void);
 static int oob_start_connect(mca_btl_base_endpoint_t *e);
 static int oob_finalize(void);
@@ -87,7 +85,7 @@
     int rc;

     rc = orte_rml.recv_buffer_nb(ORTE_NAME_WILDCARD,
-                                 OOB_TAG,
+                                 ORTE_RML_TAG_OPENIB,
                                  ORTE_RML_PERSISTENT,
                                  rml_recv_cb,
                                  NULL);
@@ -124,7 +122,7 @@
  */
 static int oob_finalize(void)
 {
-    orte_rml.recv_cancel(ORTE_NAME_WILDCARD, OOB_TAG);
+    orte_rml.recv_cancel(ORTE_NAME_WILDCARD, ORTE_RML_TAG_OPENIB);
     return OMPI_SUCCESS;
 }

@@ -465,7 +463,7 @@

     /* send to remote endpoint */
     rc = orte_rml.send_buffer_nb(&endpoint->endpoint_proc->proc_guid,
-                                 buffer, OOB_TAG, 0,
+                                 buffer, ORTE_RML_TAG_OPENIB, 0,
                                  rml_send_cb, NULL);
     if (ORTE_SUCCESS != rc) {
         ORTE_ERROR_LOG(rc);

Modified: trunk/ompi/mca/btl/udapl/btl_udapl_endpoint.c
====================================================================== ========
--- trunk/ompi/mca/btl/udapl/btl_udapl_endpoint.c       (original)
+++ trunk/ompi/mca/btl/udapl/btl_udapl_endpoint.c 2007-08-16 10:02:35 EDT (Thu, 16 Aug 2007)
@@ -491,7 +491,7 @@

     /* Send the buffer */
rc = orte_rml.send_buffer_nb(&endpoint->endpoint_proc-
proc_guid, buf,
- ORTE_RML_TAG_DYNAMIC - 1, 0, mca_btl_udapl_endpoint_send_cb, NULL); + ORTE_RML_TAG_UDAPL, 0, mca_btl_udapl_endpoint_send_cb, NULL);
     if(0 > rc) {
         ORTE_ERROR_LOG(rc);
         return rc;
@@ -558,7 +558,7 @@

 void mca_btl_udapl_endpoint_post_oob_recv(void)
 {
- orte_rml.recv_buffer_nb(ORTE_NAME_WILDCARD, ORTE_RML_TAG_DYNAMIC-1,
+    orte_rml.recv_buffer_nb(ORTE_NAME_WILDCARD, ORTE_RML_TAG_UDAPL,
             ORTE_RML_PERSISTENT, mca_btl_udapl_endpoint_recv, NULL);
 }


Modified: trunk/orte/mca/rml/rml_types.h
====================================================================== ========
--- trunk/orte/mca/rml/rml_types.h      (original)
+++ trunk/orte/mca/rml/rml_types.h 2007-08-16 10:02:35 EDT (Thu, 16 Aug 2007)
@@ -80,6 +80,12 @@

 #define ORTE_RML_TAG_RML_ROUTE              24

+#define ORTE_RML_TAG_UDAPL                  25
+#define ORTE_RML_TAG_OPENIB                 26
+#define ORTE_RML_TAG_MVAPI                  27
+
+#define ORTE_RML_TAG_COMM_CID_INTRA         28
+
 /* For CRCP Coord Component */
 #define OMPI_CRCP_COORD_BOOKMARK_TAG      4242

_______________________________________________
svn mailing list
s...@open-mpi.org
http://www.open-mpi.org/mailman/listinfo.cgi/svn

_______________________________________________
devel mailing list
de...@open-mpi.org
http://www.open-mpi.org/mailman/listinfo.cgi/devel

Reply via email to