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.
-----------------------------------------------------------------------------------

Reply via email to