Open MPI logo

Open MPI Development Mailing List Archives

  |   Home   |   Support   |   FAQ   |   all Development mailing list

Subject: [OMPI devel] RFC: Add two new verbose outputs to BML layer
From: Rolf vandeVaart (rvandevaart_at_[hidden])
Date: 2014-03-03 17:16:43


WHAT: Add two new verbose outputs to BML layer

WHY: There are times that I really want to know which BTLs are being used. These verbose outputs can help with that.

WHERE: ompi/mca/bml/r2/bml_r2.c

TIMEOUT: COB Friday, 7 March 2014

MORE DETAIL: I have run into some cases where I have added to add some opal_outputs to figure out what is going on with respect to which BTLs are selected. I thought it would be nice to make it part of the verbose output. The entire change is below.

Index: ompi/mca/bml/r2/bml_r2.c
===================================================================
--- ompi/mca/bml/r2/bml_r2.c (revision 30911)
+++ ompi/mca/bml/r2/bml_r2.c (working copy)
@@ -14,6 +14,7 @@
  * reserved.
  * Copyright (c) 2008-2009 Cisco Systems, Inc. All rights reserved.
  * Copyright (c) 2013 Intel, Inc. All rights reserved
+ * Copyright (c) 2014 NVIDIA Corporation. All rights reserved.
  * $COPYRIGHT$
  *
  * Additional copyrights may follow
@@ -250,10 +251,24 @@
                     /* skip this btl if the exclusivity is less than the previous */
                     if(bml_btl->btl->btl_exclusivity > btl->btl_exclusivity) {
                         btl->btl_del_procs(btl, 1, &proc, &btl_endpoints[p]);
+ opal_output_verbose(20, ompi_bml_base_framework.framework_output,
+ "mca: bml: Not using %s btl to %s on node %s "
+ "because %s btl has higher exclusivity (%d > %d)",
+ btl->btl_component->btl_version.mca_component_name,
+ OMPI_NAME_PRINT(&proc->proc_name), proc->proc_hostname,
+ bml_btl->btl->btl_component->btl_version.mca_component_name,
+ bml_btl->btl->btl_exclusivity,
+ btl->btl_exclusivity);
                         continue;
                     }
                 }

+ opal_output_verbose(5, ompi_bml_base_framework.framework_output,
+ "mca: bml: Using %s btl to %s on node %s",
+ btl->btl_component->btl_version.mca_component_name,
+ OMPI_NAME_PRINT(&proc->proc_name),
+ proc->proc_hostname);
+
                 /* cache the endpoint on the proc */
                 bml_btl = mca_bml_base_btl_array_insert(&bml_endpoint->btl_send);
                 bml_btl->btl = btl;

-----------------------------------------------------------------------------------
This email message is for the sole use of the intended recipient(s) and may contain
confidential information. Any unauthorized review, use, disclosure or distribution
is prohibited. If you are not the intended recipient, please contact the sender by
reply email and destroy all copies of the original message.
-----------------------------------------------------------------------------------