<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><br><p class="MsoNormal"><span lang="EN-US" style="font-size:12.0pt">Hi, Mark,<o:p></o:p></span></p>

<p class="MsoNormal"><span lang="EN-US" style="font-size:12.0pt">Thanks for the
reply! <o:p></o:p></span></p>

<p class="MsoNormal"><span lang="EN-US" style="font-size:12.0pt">It seemed that I
got something messed up. At the beginning, I used ‘constraints = all-bonds’ and
</span><span lang="EN-US" style="font-size:12.0pt;mso-font-kerning:0pt">‘domain decomposition’.
W</span><span lang="EN-US" style="font-size:12.0pt">hen </span><span lang="EN-US" style="font-size:12.0pt;mso-font-kerning:0pt">the </span><span lang="EN-US" style="font-size:12.0pt">simulation scale to more than 2 processes, an error
like below will occur: <o:p></o:p></span></p>

<p class="MsoNormal" align="left" style="text-align:left;mso-layout-grid-align:
none;text-autospace:none"><span lang="EN-US" style="font-size:12.0pt;mso-font-kerning:
0pt">####################<o:p></o:p></span></p>

<p class="MsoNormal"><span lang="EN-US" style="font-size:12.0pt">Fatal error: There
is no domain decomposition for 6 nodes that is compatible with the given box
and a minimum cell size of 2.06375 nm<o:p></o:p></span></p>

<p class="MsoNormal"><span lang="EN-US" style="font-size:12.0pt">Change the number
of nodes or mdrun option -rcon or -dds or your LINCS settings<o:p></o:p></span></p>

<p class="MsoNormal"><span lang="EN-US" style="font-size:12.0pt">Look in the log
file for details on the domain decomposition<o:p></o:p></span></p>

<p class="MsoNormal" align="left" style="text-align:left;mso-layout-grid-align:
none;text-autospace:none"><span lang="EN-US" style="font-size:12.0pt;mso-font-kerning:
0pt">####################<o:p></o:p></span></p>

<p class="MsoNormal"><span lang="EN-US" style="font-size:12.0pt"><o:p>&nbsp;</o:p></span></p>

<p class="MsoNormal"><span lang="EN-US" style="font-size:12.0pt">I refer to the
manual and found no answer. Then I turned to use ‘</span><span lang="EN-US" style="font-size:12.0pt;mso-font-kerning:0pt">particle decomposition’, tried
all kind of method, including change mpich to lammpi, change Gromacs from V4.05
to V4.07,adjusting the mdp file (e.g. ‘</span><span lang="EN-US" style="font-size:12.0pt">constraints = hbonds</span><span lang="EN-US" style="font-size:12.0pt;mso-font-kerning:0pt">’ or no PME), and none of these
take effect! I thought I have tried ‘</span><span lang="EN-US" style="font-size:
12.0pt">constraints = hbonds</span><span lang="EN-US" style="font-size:12.0pt;
mso-font-kerning:0pt">’ with ‘domain decomposition’, at least with lammpi. <o:p></o:p></span></p>

<p class="MsoNormal"><span lang="EN-US" style="font-size:12.0pt;mso-font-kerning:
0pt">However, when I tried ‘</span><span lang="EN-US" style="font-size:12.0pt">constraints
= hbonds</span><span lang="EN-US" style="font-size:12.0pt;mso-font-kerning:0pt">’
</span><span lang="EN-US" style="font-size:12.0pt">and </span><span lang="EN-US" style="font-size:12.0pt;mso-font-kerning:0pt">‘domain decomposition’ under
mpich today, it scaled to more than 2 processes well! And now it also scaled
well under lammpi using ‘</span><span lang="EN-US" style="font-size:12.0pt">constraints
= hbonds</span><span lang="EN-US" style="font-size:12.0pt;mso-font-kerning:0pt">’
</span><span lang="EN-US" style="font-size:12.0pt">and </span><span lang="EN-US" style="font-size:12.0pt;mso-font-kerning:0pt">‘domain decomposition’!<o:p></o:p></span></p>

<p class="MsoNormal"><span lang="EN-US" style="font-size:12.0pt;mso-font-kerning:
0pt"><o:p>&nbsp;</o:p></span></p>

<p class="MsoNormal"><span lang="EN-US" style="font-size:12.0pt;mso-font-kerning:
0pt">So, it seemed the key is ‘</span><span lang="EN-US" style="font-size:12.0pt">constraints
= hbonds</span><span lang="EN-US" style="font-size:12.0pt;mso-font-kerning:0pt">’
for ‘domain decomposition’.<o:p></o:p></span></p>

<p class="MsoNormal"><span lang="EN-US" style="font-size:12.0pt;mso-font-kerning:
0pt"><o:p>&nbsp;</o:p></span></p>

<p class="MsoNormal"><span lang="EN-US" style="font-size:12.0pt;mso-font-kerning:
0pt">Of course, the simulation still crashed when using </span><span lang="EN-US" style="font-size:12.0pt">‘</span><span lang="EN-US" style="font-size:
12.0pt;mso-font-kerning:0pt">particle decomposition’ with ‘</span><span lang="EN-US" style="font-size:12.0pt">constraints = hbonds or all-bonds’, and I
don’t know why.<o:p></o:p></span></p>

<p class="MsoNormal"><span lang="EN-US" style="font-size:12.0pt"><o:p>&nbsp;</o:p></span></p>

<p class="MsoNormal"><span lang="EN-US" style="font-size:12.0pt;mso-font-kerning:
0pt">I use double precision version and NTP ensemble to perform a PCA!<o:p></o:p></span></p><br><div id="addMailSign"><span> </span></div><div id="mailcontent"><br><blockquote dir="ltr" style="border-left:2px solid #000000;margin-left:10px;margin-right:0px;padding-left:5px;padding-right:0px;font-family:宋体;font-style:normal;font-variant:normal;font-weight:normal;font-size: 9pt;line-height:normal;font-size-adjust:none;font-stretch:normal;"><div style="font-family: 宋体; font-style: normal; font-variant: normal; font-weight: normal; font-size: 9pt; line-height: normal; font-size-adjust: none; font-stretch: normal;">----- Original Message -----</div><p>From: xhomes@sohu.com<br>Date: Tuesday, June 1, 2010 11:53<br>Subject: [gmx-users] “Fatal error in PMPI_Bcast: Other MPI error, …..” occurs when using the ‘particle decomposition’ option.<br>To: gmx-users &lt;gmx-users@gromacs.org&gt;</p><div class="sohu_quote" style=""><br><br>&gt; Hi, everyone of gmx-users,<br>&gt; <br>&gt; I met a problem when I use the ‘particle decomposition’ option <br>&gt; in a NTP MD simulation of Engrailed Homeodomain (En) in CL- <br>&gt; neutralized water box. It just crashed with an error “Fatal <br>&gt; error in PMPI_Bcast: Other MPI error, error stack: …..”. <br>&gt; However, I’ve tried the ‘domain decomposition’ and everything is <br>&gt; ok! I use the Gromacs 4.05 and 4.07, the MPI lib is mpich2-<br>&gt; 1.2.1p1. The system box size is 5.386(nm)3. The MDP file list as <br>&gt; below:<br>&gt; ########################################################<br>&gt; title&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = En<br>&gt; ;cpp&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = /lib/cpp<br>&gt; ;include&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = -I../top<br>&gt; define&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = <br>&gt; integrator&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = md<br>&gt; dt&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = 0.002<br>&gt; nsteps&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = 3000000<br>&gt; nstxout&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = 500<br>&gt; nstvout&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = 500<br>&gt; nstlog&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = 250<br>&gt; nstenergy&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = 250<br>&gt; nstxtcout&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = 500<br>&gt; comm-<br>&gt; mode&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = Linear<br>&gt; nstcomm&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = 1<br>&gt; <br>&gt; ;xtc_grps&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = Protein<br>&gt; energygrps&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = protein non-protein<br>&gt; <br>&gt; nstlist&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = 10<br>&gt; ns_type&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = grid<br>&gt; pbc&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = xyz        default xyz<br>&gt; ;periodic_molecules&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = <br>&gt; yes        default no<br>&gt; rlist&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = 1.0<br>&gt; <br>&gt; coulombtype&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = PME<br>&gt; rcoulomb&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = 1.0<br>&gt; vdwtype&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = Cut-off<br>&gt; rvdw&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = 1.4<br>&gt; fourierspacing&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = 0.12<br>&gt; fourier_nx&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = 0<br>&gt; fourier_ny&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = 0<br>&gt; fourier_nz&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = 0<br>&gt; pme_order&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = 4<br>&gt; ewald_rtol&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = 1e-5<br>&gt; optimize_fft&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = yes<br>&gt; <br>&gt; tcoupl&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = v-rescale<br>&gt; tc_grps&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = protein non-protein<br>&gt; tau_t&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = 0.1&nbsp; 0.1<br>&gt; ref_t&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = 298&nbsp; 298<br>&gt; Pcoupl&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = Parrinello-Rahman<br>&gt; pcoupltype&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = isotropic<br>&gt; tau_p&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = 0.5<br>&gt; compressibility&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = 4.5e-5<br>&gt; ref_p&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = 1.0<br>&gt; <br>&gt; gen_vel&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = yes<br>&gt; gen_temp&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = 298<br>&gt; gen_seed&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = 173529<br>&gt; <br>&gt; constraints&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = hbonds<br>&gt; lincs_order&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = 10<br>&gt; ########################################################<br>&gt; <br>&gt; When I conduct MD using “nohup mpiexec -np 2 mdrun_dmpi -s <br>&gt; 11_Trun.tpr -g 12_NTPmd.log -o 12_NTPmd.trr -c 12_NTPmd.pdb -e <br>&gt; 12_NTPmd_ener.edr -cpo 12_NTPstate.cpt &amp;”, everything is OK.<br>&gt; <br>&gt; Since the system doesn’t support more than 2 processes under <br>&gt; ‘domain decomposition’ option, it took me about 30 days to <br>&gt; calculate a 6ns trajectory. Then I decide to use the ‘particle </div><br><br>Why no more than 2? What GROMACS version? Why are you using double precision with temperature coupling?<br><br>MPICH has known issues. Use OpenMPI.<div class="sohu_quote" style=""><br><br>&gt; decomposition’ option. The command line is “nohup mpiexec -np 6 <br>&gt; mdrun_dmpi -pd -s 11_Trun.tpr -g 12_NTPmd.log -o 12_NTPmd.trr -c <br>&gt; 12_NTPmd.pdb -e 12_NTPmd_ener.edr -cpo 12_NTPstate.cpt &amp;”. And I <br>&gt; got the crash in the nohup file like below:<br>&gt; ####################<br>&gt; Fatal error in PMPI_Bcast: Other MPI error, error stack:<br>&gt; PMPI_Bcast(1302)......................: MPI_Bcast(buf=0x8fedeb0, <br>&gt; count=60720, MPI_BYTE, root=0, MPI_COMM_WORLD) failed<br>&gt; MPIR_Bcast(998).......................: <br><wbr>&gt; MPIR_Bcast_scatter_ring_al<wbr>lgather(842): <br>&gt; MPIR_Bcast_binomial(187)..............: <br>&gt; MPIC_Send(41).........................: <br>&gt; MPIC_Wait(513)........................: <br>&gt; MPIDI_CH3I_Progress(150)..............: <br><wbr>&gt; MPID_nem_mpich2_blocking_r<wbr>ecv(948)....: <br>&gt; MPID_nem_tcp_connpoll(1720)...........: <br>&gt; state_commrdy_handler(1561)...........: <br>&gt; MPID_nem_tcp_send_queued(127).........: writev to socket failed -<br>&gt; Bad address<br>&gt; rank 0 in job 25&nbsp; cluster.cn_52655&nbsp;&nbsp; caused <br>&gt; collective abort of all ranks<br>&gt; exit status of rank 0: killed by signal 9<br>&gt; ####################<br>&gt; <br>&gt; And the ends of the log file list as below:<br>&gt; ####################<br>&gt; ……..<br>&gt; ……..<br>&gt; ……..<br>&gt; ……..<br>&gt; &nbsp;&nbsp; <br>&gt; bQMMM&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = FALSE<br>&gt; &nbsp;&nbsp; <br>&gt; QMconstraints&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = 0<br>&gt; &nbsp;&nbsp; QMMMscheme&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = 0<br>&gt; &nbsp;&nbsp; <br>&gt; scalefactor&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = 1<br>&gt; qm_opts:<br>&gt; &nbsp;&nbsp; <br>&gt; ngQM&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = 0<br>&gt; ####################<br>&gt; <br>&gt; I’ve search the gmx-users mail list and tried to adjust the md <br>&gt; parameters, and no solution was found. The "mpiexec -np x" <br>&gt; option doesn't work except when x=1. I did found that when the <br>&gt; whole En protein is constrained using position restraints <br>&gt; (define = -DPOSRES), the ‘particle decomposition’ option works. <br>&gt; However this is not the kind of MD I want to conduct.<br>&gt; &nbsp;<br>&gt; Could anyone help me about this problem? And I also want to know <br>&gt; how can I accelerate this kind of MD (long time simulation of <br>&gt; small system) using Gromacs? Thinks a lot!<br>&gt; <br>&gt; (Further information about the simulated system: The system has <br>&gt; one En protein (54 residues, 629 atoms), total 4848 spce waters, <br>&gt; and 7 Cl- used to neutralize the system. The system has been <br>&gt; minimized first. A 20ps MD is also performed for the waters and <br>&gt; ions before EM.)</div><br><br>This should be bread-and-butter with either decomposition up to at least 16 processors, for a correctly compiled GROMACS with a useful MPI library.<br><br>Mark<br>-- <br><p></p></blockquote></div>