<div dir="ltr">A quick fix might be changing the lines:<div><br></div><div><div>        if ( (gs.set[eglsSTOPCOND] &lt; 0 ) || ( (gs.set[eglsSTOPCOND] &gt; 0 ) &amp;&amp; ( bNS || ir-&gt;nstlist == 0)) )</div><div>        {</div>
<div>            bLastStep = TRUE;</div><div>        }</div></div><div><br></div><div style>in</div><div style>        if ( (gs.set[eglsSTOPCOND] &lt; 0 ) || ( (gs.set[eglsSTOPCOND] &gt; 0 ) &amp;&amp; ( bNStList || ir-&gt;nstlist == 0)) )<br>
</div><div style><div><div>        {<br></div><div>            bLastStep = TRUE;</div><div>        }</div></div><div><br></div></div><div style>What do you think about?</div><div style><br></div><div style>Francesco               <br>
</div><div><br></div><div><br></div></div><div class="gmail_extra"><br><br><div class="gmail_quote">2013/6/3 francesco oteri <span dir="ltr">&lt;<a href="mailto:francesco.oteri@gmail.com" target="_blank">francesco.oteri@gmail.com</a>&gt;</span><br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Dear gromacs developers,<div><br></div><div>analyzing a hunging replica exchange simulation, I might have figured out a problem (likely a bug).</div>
<div><br></div><div>Let&#39;s suppose I am running replica exchange with -maxh, -replex 50 and neighbour searching frequence = 5 steps . </div>
<div><br></div><div>If I well understood, once the code run for maxh*0.99 it stops at the next neighbour searching step.</div><div><br></div><div>If the program reaches maxh*0.99 let&#39;s say at the step 50, the next neighbour searching step is the 55. But if 2 replicas exchange at step 50, it implies rebuilding the neighbour searching </div>

<div>( because in the code bExchanged=TRUE implies bNS to be TRUE). </div><div><br></div><div>These two replicas so stop at step 51 but the other replicas continue until the 55th step. </div><div>Here the problem appears. In this case mdrun performs global communication calling compute_global next to the line commented as:</div>

<div> /* ############## IF NOT VV, Calculate globals HERE, also iterate constraints  ############ */<br></div><div><br></div><div>Since the 2 replicas that exchanged already ended, mdrun hungs.</div><div>
<br></div><div>Maybe my analysis is incorrect and in this case I apologize.</div><div>In any case, if nobody did, I am looking for a fix.</div><span class="HOEnZb"><font color="#888888"><div><br></div><div>Francesco</div>
<div><br></div>
<div><br></div></font></span></div>
</blockquote></div><br><br clear="all"><div><br></div>-- <br>Cordiali saluti, Dr.Oteri Francesco
</div>