<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
span.EmailStyle17
        {mso-style-type:personal-compose;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-family:"Calibri",sans-serif;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="EN-US" link="blue" vlink="purple">
<div class="WordSection1">
<p class="MsoNormal">When I run the XSBench proxy app on 4 nodes, it finishes successfully, but when I run it with the libfabric sockets provider, it hangs.  After<o:p></o:p></p>
<p class="MsoNormal">the simulation is complete, there are calls to MPI_Barrier(), MPI_Reduce(), and MPI_Finalize().<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">command line:<o:p></o:p></p>
<p class="MsoNormal">$ mpirun -np 4 --map-by node --hostfile /nfs/mpi/etc/mpi-hostfile --mca mtl_ofi_provider_include sockets /nfs/software/proxy_apps/XSBench-14/src/XSBench -t 1 -s small<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">XSBench with the sockets provider runs to completion (does not hang) with -np 3.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">OpenMPI-4.0.0<o:p></o:p></p>
<p class="MsoNormal">$ ./configure --prefix=/nfs/mpi --with-libfabric=/nfs/mpi --enable-orterun-prefix-by-default --disable-verbs-sshmem --without-verbs --enable-debug CFLAGS="-I/nfs/mpi/include -g -L/nfs/mpi/lib -ggdb -O0"<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">libfabric-1.7.0<o:p></o:p></p>
<p class="MsoNormal">$ ./configure --prefix=/nfs/mpi --enable-sockets=yes --enable-verbs=no --enable-debug=yes CFLAGS="-ggdb -O0"<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">A gdb stack trace on each node shows that node0 (where mpirun was run) is stuck in MPI_Reduce().  Node1 and node2 are in MPI_Finalize(), and node3 is in MPI_Barrier(). This is one example; the node that hangs in MPI_Barrier varies from
 run to run.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Node3 stack trace:<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">#0 fi_gettime_ms<o:p></o:p></p>
<p class="MsoNormal">#1 sock_cq_sreadfrom<o:p></o:p></p>
<p class="MsoNormal">#2 sock_cq_readfrom<o:p></o:p></p>
<p class="MsoNormal">#3 sock_cq_read<o:p></o:p></p>
<p class="MsoNormal">#4 fi_cq_read<o:p></o:p></p>
<p class="MsoNormal">#5 ompi_mtl_ofi_progress<o:p></o:p></p>
<p class="MsoNormal">#6 ompi_mtl_ofi_progress_no_inline<o:p></o:p></p>
<p class="MsoNormal">#7 opal_progress<o:p></o:p></p>
<p class="MsoNormal">#8 ompi_request_wait_completion<o:p></o:p></p>
<p class="MsoNormal">#9 ompi_request_default_wait<o:p></o:p></p>
<p class="MsoNormal">#10 ompi_coll_base_sendrecv_zero<o:p></o:p></p>
<p class="MsoNormal">#11 ompi_coll_base_barrier_intra_recursivedoubling<o:p></o:p></p>
<p class="MsoNormal">#12 ompi_coll_tuned_barrier_intra_dec_fixed<o:p></o:p></p>
<p class="MsoNormal">#13 PMPI_Barrier<o:p></o:p></p>
<p class="MsoNormal">#14 print_results<o:p></o:p></p>
<p class="MsoNormal">#15 main<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Node0 stack trace:<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">#0 ??<o:p></o:p></p>
<p class="MsoNormal">#1 gettimeofday<o:p></o:p></p>
<p class="MsoNormal">#2 fi_gettime_ms<o:p></o:p></p>
<p class="MsoNormal">#3 sock_cq_sreadfrom<o:p></o:p></p>
<p class="MsoNormal">#4 sock_cq_readfrom<o:p></o:p></p>
<p class="MsoNormal">#5 sock_cq_read<o:p></o:p></p>
<p class="MsoNormal">#6 fi_cq_read<o:p></o:p></p>
<p class="MsoNormal">#7 ompi_mtl_ofi_progress<o:p></o:p></p>
<p class="MsoNormal">#8 ompi_mtl_ofi_progress_no_inline<o:p></o:p></p>
<p class="MsoNormal">#9 opal_progress<o:p></o:p></p>
<p class="MsoNormal">#10 ompi_request_wait_completion<o:p></o:p></p>
<p class="MsoNormal">#11 mca_pml_cm_recv<o:p></o:p></p>
<p class="MsoNormal">#12 ompi_coll_base_reduce_intra_basic_linear<o:p></o:p></p>
<p class="MsoNormal">#13 ompi_coll_tuned_reduce_intra_dec_fixed<o:p></o:p></p>
<p class="MsoNormal">#14 PMPI_Reduce<o:p></o:p></p>
<p class="MsoNormal">#15 print_results<o:p></o:p></p>
<p class="MsoNormal">#16 main<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Node1 stack trace:<o:p></o:p></p>
<p class="MsoNormal">#0 __GI___nanosleep<o:p></o:p></p>
<p class="MsoNormal">#1 usleep<o:p></o:p></p>
<p class="MsoNormal">#2 ompi_mpi_finalize<o:p></o:p></p>
<p class="MsoNormal">#3 PMPI_Finalize<o:p></o:p></p>
<p class="MsoNormal">#4 main<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Node2 stack trace:<o:p></o:p></p>
<p class="MsoNormal">#0 __GI___nanosleep<o:p></o:p></p>
<p class="MsoNormal">#1 usleep<o:p></o:p></p>
<p class="MsoNormal">#2 ompi_mpi_finalize<o:p></o:p></p>
<p class="MsoNormal">#3 PMPI_Finalize<o:p></o:p></p>
<p class="MsoNormal">#4 main<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">-- <o:p></o:p></p>
<p class="MsoNormal">John Wilkes | <b><span style="color:#00B050">AMD Research</span></b> | 
<a href="mailto:john.wilkes@amd.com"><span style="color:blue">john.wilkes@amd.com</span></a> | office: +1 425.586.6412 (x26412)<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
</body>
</html>