<div dir="ltr">No, not at all. </div><div class="gmail_extra"><br clear="all"><div><div class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr">--Junchao Zhang</div></div></div>
<br><div class="gmail_quote">On Mon, Jul 23, 2018 at 11:04 AM, Jeff Hammond <span dir="ltr"><<a href="mailto:jeff.science@gmail.com" target="_blank">jeff.science@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="auto">Is creating two communicators prohibitive?<br><br><div id="m_200524189839908434AppleMailSignature">Sent from my iPhone</div><div><div class="h5"><div><br>On Jul 23, 2018, at 8:02 AM, Junchao Zhang <<a href="mailto:jczhang@mcs.anl.gov" target="_blank">jczhang@mcs.anl.gov</a>> wrote:<br><br></div><blockquote type="cite"><div><div dir="ltr"><div>Jeff,</div> No. I do not want to send messages to other ranks (not in comm_dist_graph).<div> My question is: I create a graph with <span style="color:rgb(80,0,80);font-size:12.8px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial;float:none;display:inline">MPI_Dist_graph_create</span><span style="color:rgb(80,0,80);font-size:12.8px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial;float:none;display:inline">_<wbr>adjacent, which specifies a communication direction. I can do <span style="text-decoration-style:initial;text-decoration-color:initial;float:none;display:inline">MPI_Neighbor_alltoallv on it. That is great.  But I also want to do backward communication (reverse the direction of the edges in graph). How can I do it without creating a new communicator?</span></span></div><div><font color="#500050"><span style="font-size:12.8px">The background of this question is: In PETSc, we have an operation called VecScatter, which scatters some entries of a parallel vector x to another parallel vector y. Sometime, we want to reverse the operation, to scatter y entries to x.</span></font></div><div><div><br></div></div></div><div class="gmail_extra"><br clear="all"><div><div class="m_200524189839908434gmail_signature" data-smartmail="gmail_signature"><div dir="ltr">--Junchao Zhang</div></div></div>
<br><div class="gmail_quote">On Mon, Jul 23, 2018 at 9:49 AM, Jeff Hammond <span dir="ltr"><<a href="mailto:jeff.science@gmail.com" target="_blank">jeff.science@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><span>On Mon, Jul 23, 2018 at 7:45 AM, Junchao Zhang <span dir="ltr"><<a href="mailto:jczhang@mcs.anl.gov" target="_blank">jczhang@mcs.anl.gov</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Hello, Dan,<br> I am interested in MPI_Neighbor_alltoallv. From its arguments, I do not see one can send a message to a neighbor not specified in the graph created by <span style="font-size:small;text-decoration-style:initial;text-decoration-color:initial;float:none;display:inline">for example, </span>MPI_Dist_graph_create<wbr>_adjacent.</div></blockquote><div><br></div></span><div>Why would you expect this?  The whole point of graph communicators is to specify the communication topology so that it can be optimized.  If you want to communicate with another ranks, use the parent communicator that supports communication to all ranks.</div><div><br></div><div>Jeff</div><div><div class="m_200524189839908434h5"><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="gmail_extra"><span class="m_200524189839908434m_202524035410497639HOEnZb"><font color="#888888"><div><div class="m_200524189839908434m_202524035410497639m_-5599483159892707794gmail_signature" data-smartmail="gmail_signature"><div dir="ltr">--Junchao Zhang</div></div></div></font></span><div><div class="m_200524189839908434m_202524035410497639h5">
<br><div class="gmail_quote">On Mon, Jul 23, 2018 at 5:51 AM, HOLMES Daniel <span dir="ltr"><<a href="mailto:d.holmes@epcc.ed.ac.uk" target="_blank">d.holmes@epcc.ed.ac.uk</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">



<div style="word-wrap:break-word">
Hi Junchao Zhang,
<div><br>
</div>
<div>My understanding of the current API for MPI-3.1 is that:</div>
<div><br>
</div>
<div>1) the virtual topology does not actually restrict communication via the communicator to the edges specified in the topology - messages can be sent along any edge in either direction, and even between pairs of processes for which no edge was specified.</div>
<div><br>
</div>
<div>2) the virtual topology can be specified as a symmetric graph - for every ‘forward’ edge (e.g. from A to B), the ‘backward’ edge (i.e. from B to A) can be included as well.</div>
<div><br>
</div>
<div>3) there is already language in the MPI Standard regarding how MPI handles symmetric and non-symmetric graph topologies for neighbourhood collective operations.</div>
<div><br>
</div>
<div>Thus, there is no need to create two distributed graph topology communicators to achieve ‘forward and backward communication along the edges’.<br>
<div>
<div style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px;font-style:normal;font-variant-caps:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;word-wrap:break-word">
<br class="m_200524189839908434m_202524035410497639m_-5599483159892707794m_-3269555800436358659Apple-interchange-newline">
Cheers,</div>
<div style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px;font-style:normal;font-variant-caps:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;word-wrap:break-word">
Dan.</div>
<div style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px;font-style:normal;font-variant-caps:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;word-wrap:break-word">
—<br>
Dr Daniel Holmes PhD<br>
Applications Consultant in HPC Research<br>
<a href="mailto:d.holmes@epcc.ed.ac.uk" target="_blank">d.holmes@epcc.ed.ac.uk</a><br>
Phone: +44 (0) 131 651 3465<br>
Mobile: +44 (0) 7940 524 088<br>
Address: Room 3415, JCMB, The King’s Buildings, Edinburgh, EH9 3FD</div>
<div style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px;font-style:normal;font-variant-caps:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;word-wrap:break-word">
—</div>
<div style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px;font-style:normal;font-variant-caps:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;word-wrap:break-word">
The University of Edinburgh is a charitable body, registered in Scotland, with registration number SC005336.</div>
<div style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px;font-style:normal;font-variant-caps:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;word-wrap:break-word">
—</div>
</div><div><div class="m_200524189839908434m_202524035410497639m_-5599483159892707794h5">
<br>
<div>
<blockquote type="cite">
<div>On 15 Jul 2018, at 10:42, Anthony Skjellum <<a href="mailto:tony@runtimecomputing.com" target="_blank">tony@runtimecomputing.com</a>> wrote:</div>
<br class="m_200524189839908434m_202524035410497639m_-5599483159892707794m_-3269555800436358659Apple-interchange-newline">
<div>
<div dir="ltr">Hi, I just saw this. 
<div><br>
<div>We definitely need to consider this concern.  </div>
<div><br>
</div>
<div>I also need to go review the APIs.</div>
<div><br>
</div>
<div>Thanks,</div>
<div>Tony</div>
<div><br>
</div>
</div>
</div>
<div class="gmail_extra"><br>
<div class="gmail_quote">On Sat, Jul 14, 2018 at 12:27 AM, Junchao Zhang <span dir="ltr">
<<a href="mailto:jczhang@mcs.anl.gov" target="_blank">jczhang@mcs.anl.gov</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div dir="ltr">
<div> I want to try MPI neighborhood collectives. I have a communication graph and want to do both forward and backward communication along the edges. With current APIs, it looks I need to create two comm_dist_graphs. It is a waste since MPI implementations
 can do similar optimizations for the two.</div>
<div> Should MPI support this scenario?  Thanks.</div>
<span class="m_200524189839908434m_202524035410497639m_-5599483159892707794m_-3269555800436358659HOEnZb"><font color="#888888"><br clear="all">
<div>
<div class="m_200524189839908434m_202524035410497639m_-5599483159892707794m_-3269555800436358659m_-3099374219715359755gmail_signature">
<div dir="ltr">--Junchao Zhang</div>
</div>
</div>
</font></span></div>
<br>
______________________________<wbr>_________________<br>
mpiwg-coll mailing list<br>
<a href="mailto:mpiwg-coll@lists.mpi-forum.org" target="_blank">mpiwg-coll@lists.mpi-forum.org</a><br>
<a href="https://lists.mpi-forum.org/mailman/listinfo/mpiwg-coll" rel="noreferrer" target="_blank">https://lists.mpi-forum.org/ma<wbr>ilman/listinfo/mpiwg-coll</a><br>
<br>
</blockquote>
</div>
<br>
<br clear="all">
<div><br>
</div>
-- <br>
<div class="m_200524189839908434m_202524035410497639m_-5599483159892707794m_-3269555800436358659gmail_signature" data-smartmail="gmail_signature">
<div dir="ltr">
<div>Tony Skjellum, PhD<br>
RunTime Computing Solutions, LLC<br>
<a href="mailto:tony@runtimecomputing.com" target="_blank">tony@runtimecomputing.com</a><br>
direct: +1-205-918-7514<br>
cell: +1-205-807-4968<br>
</div>
</div>
</div>
</div>
______________________________<wbr>_________________<br>
mpiwg-coll mailing list<br>
<a href="mailto:mpiwg-coll@lists.mpi-forum.org" target="_blank">mpiwg-coll@lists.mpi-forum.org</a><br>
<a href="https://lists.mpi-forum.org/mailman/listinfo/mpiwg-coll" target="_blank">https://lists.mpi-forum.org/ma<wbr>ilman/listinfo/mpiwg-coll</a><br>
</div>
</blockquote>
</div>
<br>
</div></div></div>
</div>

<br>The University of Edinburgh is a charitable body, registered in<br>
Scotland, with registration number SC005336.<br>
<br>______________________________<wbr>_________________<br>
mpiwg-coll mailing list<br>
<a href="mailto:mpiwg-coll@lists.mpi-forum.org" target="_blank">mpiwg-coll@lists.mpi-forum.org</a><br>
<a href="https://lists.mpi-forum.org/mailman/listinfo/mpiwg-coll" rel="noreferrer" target="_blank">https://lists.mpi-forum.org/ma<wbr>ilman/listinfo/mpiwg-coll</a><br>
<br></blockquote></div><br></div></div></div>
<br>______________________________<wbr>_________________<br>
mpiwg-coll mailing list<br>
<a href="mailto:mpiwg-coll@lists.mpi-forum.org" target="_blank">mpiwg-coll@lists.mpi-forum.org</a><br>
<a href="https://lists.mpi-forum.org/mailman/listinfo/mpiwg-coll" rel="noreferrer" target="_blank">https://lists.mpi-forum.org/ma<wbr>ilman/listinfo/mpiwg-coll</a><br>
<br></blockquote></div></div></div><span class="m_200524189839908434HOEnZb"><font color="#888888"><br><br clear="all"><div><br></div>-- <br><div class="m_200524189839908434m_202524035410497639gmail_signature" data-smartmail="gmail_signature">Jeff Hammond<br><a href="mailto:jeff.science@gmail.com" target="_blank">jeff.science@gmail.com</a><br><a href="http://jeffhammond.github.io/" target="_blank">http://jeffhammond.github.io/</a></div>
</font></span></div></div>
<br>______________________________<wbr>_________________<br>
mpiwg-coll mailing list<br>
<a href="mailto:mpiwg-coll@lists.mpi-forum.org" target="_blank">mpiwg-coll@lists.mpi-forum.org</a><br>
<a href="https://lists.mpi-forum.org/mailman/listinfo/mpiwg-coll" rel="noreferrer" target="_blank">https://lists.mpi-forum.org/ma<wbr>ilman/listinfo/mpiwg-coll</a><br>
<br></blockquote></div><br></div>
</div></blockquote><blockquote type="cite"><div><span>______________________________<wbr>_________________</span><br><span>mpiwg-coll mailing list</span><br><span><a href="mailto:mpiwg-coll@lists.mpi-forum.org" target="_blank">mpiwg-coll@lists.mpi-forum.org</a></span><br><span><a href="https://lists.mpi-forum.org/mailman/listinfo/mpiwg-coll" target="_blank">https://lists.mpi-forum.org/<wbr>mailman/listinfo/mpiwg-coll</a></span><br></div></blockquote></div></div></div><br>______________________________<wbr>_________________<br>
mpiwg-coll mailing list<br>
<a href="mailto:mpiwg-coll@lists.mpi-forum.org">mpiwg-coll@lists.mpi-forum.org</a><br>
<a href="https://lists.mpi-forum.org/mailman/listinfo/mpiwg-coll" rel="noreferrer" target="_blank">https://lists.mpi-forum.org/<wbr>mailman/listinfo/mpiwg-coll</a><br>
<br></blockquote></div><br></div>