Re: Why is SHAKE not being used in typical NAMD simulations ?

From: Himanshu Khandelia (hkhandel_at_memphys.sdu.dk)
Date: Sat May 26 2007 - 05:44:38 CDT

Gianluca,

Here are the results of my tests. These were done on 8 processors. Similar
results were obtained for 16 processors

#===============================================================
NAMD 2.6
SHAKE vs. NOSHAKE

40,000 atoms, 8 processors, 2 quad-core nodes. Cutoff: 10, 12, 14., PME

        timestep nonbondedfreq fullelecfreq hours/ns

SHAKE 2 1 1 26.36 (50k steps)
SHAKE 2 1 2 25.35 (50k steps)
NOSH 1 2 4 31.35 (100k steps)
NOSH 1 2 2 30.90 (100k steps)

#===============================================================
102,000 atoms, 8 processors, 2 quad-core nodes. Cutoff: 10, 12, 14, PME

        timestep nonbondedfreq fullelecfreq hours/ns

SHAKE 2 1 1 57.5
SHAKE 2 1 2 56.6
NOSH 1 2 4 66.7
NOSH 1 2 2 66.7

----------------------------
Himanshu Khandelia, PhD
Research Assistant Professor (Postdoc)
MEMPHYS, Center for Membrane Physics: www.memphys.sdu.dk
-----------------------------

On Fri, 25 May 2007, Gianluca Interlandi wrote:

> Oops, I missed the parameter nonbondedfreq=2, sorry. ok, that is what
> probably causes the speed up. Has anyone performed extensive benchmarks
> with/without SHAKE and with/without multistep and posted them online?
>
> Now I'm performing a benchmark with a 1/2/4 time step. Let's see what the
> outcome will be.
>
> Gianluca
>
> On Fri, 25 May 2007, Gianluca Interlandi wrote:
>
> > Hello Peter,
> >
> > You say only 15% speedup? I have just performed a benchmark on 32 CPUs of
> > NCSA SGI Altix. My system contains 96106 atoms. If I run it with a 2 fs
> > timestep and SHAKE it takes 3796.5 sec to perform 100 psec (i.e. 50'000
> > steps). If I turn off SHAKE and use a 1 fs timestep it takes 7382.5 sec to
> > perform 100 psec (i.e. 100'000 steps). Thus I do get a speedup of 94%
> > thanks to SHAKE and 2 fs timestep. What do I do differently than other
> > people who get only 15-25%?
> >
> > Some simulation details: in both benchmarks I used PME, langevin
> > temperature and pressure control, switchdist=10.0, cutoff=12.0,
> > pairlistdist=14.0, stepspercycle=10, fullElecFreq=1 (default). I did not
> > use a multistep (fullElecFreq=4) when SHAKE was off but I don't think that
> > this would make such a large difference.
> >
> > Or, does the scalability of SHAKE break down only with very large systems
> > and a very large number of CPUs?
> >
> > Another question: you say that you don't use SHAKE for very large
> > simulations. Can you please give an example of what very large could be?
> >
> > I apologize if I'm creating confusion. I use SHAKE a lot and thus I want
> > to better understand its pro/contra.
> >
> > Many thanks,
> >
> > Gianluca
> >
> > On Fri, 25 May 2007, Peter Freddolino wrote:
> >
> > > Hi Himanshu,
> > >
> > > I think there are several reasons for this; some might be considered
> > > "good" and some not. First, I'd like to clarify something. A bit earlier
> > > you said
> > >
> > > I am hoping some of the developers will
> > > be able to tell us why SHAKE is not recommended in NAMD, while it is in
> > > other programs?
> > >
> > >
> > > The issue is not that SHAKE is not recommended in NAMD; it is just as
> > > advisable in NAMD as in any of the other common MD programs. Please
> > > note, also, that the NAMD "developers" and "users" are mostly disjoint
> > > sets; it isn't the developers deciding not to use SHAKE, but the users.
> > > The issue is just that people in that people in the NAMD community (and,
> > > in particular, the KS group) tend to be those that avoid using SHAKE for
> > > most applications. This is in large part due to lingering concerns about
> > > coupling of different frequency modes of motion (as pointed out by Ana)
> > > and pressure profile calculations (see, e.g., JCC 121:8611); this
> > > concern is particularly acute within the NAMD community because people
> > > tend to do large simulations, frequently containing membranes, and have
> > > not yet been adequately convinced that for these applications no
> > > pathologies with SHAKE will occur to make it worthwhile using SHAKE for
> > > a 15% speedup. SHAKE convergence can also be problematic when using very
> > > large systems in constant pressure simulations, which (again) is fairly
> > > common in the NAMD community. The speedup from SHAKE also gets less
> > > impressive as more processors are used.
> > >
> > > Some part of this difference is also due to institutional memory; I have
> > > no doubt that there are a lot of simulations done without rigid bonds
> > > even where they would be fine, because of the concerns highlighted
> > > above, and the fact that people in the NAMD community tend to put more
> > > stock in those concerns (even in cases where they may not be valid) and
> > > choose to err on the side of caution. I know for my own research, I'm
> > > using SHAKE in some simulations (particularly those involving long
> > > timescale exploration of relatively small systems) but not others (those
> > > where I have a membrane or other concerns about the pressure, or very
> > > large simulations).
> > >
> > > You're absolutely correct that SHAKE is quite widely used in
> > > biomolecular simulations, and is well tested for most of these
> > > applications. Whether or not SHAKE should be applied to any given
> > > simulation comes down to personal preference, and an evaluation of
> > > whether or not the specific places where it *could* in principle cause
> > > trouble are important to your case (preferably including some short
> > > simulations of your system with and without SHAKE). I know that people
> > > around here are starting to test and use SHAKE a bit more; I think the
> > > main reason it isn't used more widely is that the speed improvements
> > > aren't, say, on the order of 2x, and for a lot of systems SHAKE doesn't
> > > seem worth the risk (that some artifact might appear) or hassle (of
> > > running a comparison simulation). Please note that I'm not being
> > > cavalier about computing time: a 15% speedup seems much less worthwhile
> > > if it costs you 10% more simulation (without rigidbonds, for comparison
> > > purposes) or 100% of your simulation (if some sort of problem occurs).
> > >
> > > Peter
> > >
> > > Himanshu Khandelia wrote:
> > > > It is not entirely true that people shy away from SHAKE. All typical
> > > > biomolecular MD simulations use SHAKE very widely, except those
> > > > implemented in NAMD. So people do shy away from SHAKE, but only when using
> > > > NAMD.
> > > >
> > > > ----------------------------
> > > > Himanshu Khandelia, PhD
> > > > Research Assistant Professor (Postdoc)
> > > > MEMPHYS, Center for Membrane Physics: www.memphys.sdu.dk
> > > > University of Southern Denmark (SDU)
> > > > Odense M 5230, Denmark
> > > >
> > > > Phone: +4565503510
> > > > email: hkhandel_at_memphys.sdu.dk
> > > > WWW: www.memphys.sdu.dk/~hkhandel
> > > > -----------------------------
> > > >
> > > >
> > > >
> > > > On Thu, 24 May 2007, Ana Celia Araujo Vila Verde wrote:
> > > >
> > > >
> > > >> Here's my two cents about this issue,
> > > >>
> > > >> There's a physical reason why people shy away from SHAKE, in particular
> > > >> when very interested in getting accurate dynamics: slow and fast
> > > >> vibrational modes "talk" to each other, and fast modes may influence
> > > >> slow modes. See Baysal, C., et al., Molecular dynamics analysis of
> > > >> coupling between librational motions and isomeric jumps in chain
> > > >> molecules. Macromolecules, 1996. 29(7): p. 2510-2514.
> > > >>
> > > >> Getting rid of fast modes by using SHAKE can thus have unexpected
> > > >> outcomes in a simulation. So, I'd be comfortable using SHAKE for
> > > >> Equilibration in most situations, but I'd evaluate carefully whether the
> > > >> 15-20% gains in simulation time are worth the extra uncertainty for
> > > >> actual runs. Normally, whether I use SHAKE or not depends on the
> > > >> problem I'm studying. If I do use SHAKE, I normally run a comparison
> > > >> simulation without it and compare the results to make sure no
> > > >> significant differences occur. Most of the time, however, I find the
> > > >> extra hassle of running that comparison simulation to be a big pain and
> > > >> not worth it for a 15% gain, so I just don't use SHAKE...
> > > >>
> > > >> I hope this helps,
> > > >>
> > > >> Ana
> > > >>
> > > >>
> > > >>
> > > >> _________________________________
> > > >> Ana Célia Araújo Vila Verde
> > > >> Penn State University
> > > >> Department of Chemical Engineering
> > > >> Fenske Laboratory
> > > >> University Park, PA 16802
> > > >> USA
> > > >>
> > > >>
> > > >> Phone: +(1) (814) 863-2879
> > > >> Fax: +(1) (814) 865-7846
> > > >> avilaverde_at_engr.psu.edu
> > > >> http://www.che.psu.edu/Faculty/JMaranas/group/avv.html
> > > >> http://www.gfct.fisica.uminho.pt/Members/acvv
> > > >> _________________________________
> > > >>
> > > >>
> > > >>
> > > >> -----Original Message-----
> > > >> From: owner-namd-l_at_ks.uiuc.edu [mailto:owner-namd-l_at_ks.uiuc.edu] On Behalf Of Himanshu Khandelia
> > > >> Sent: Thursday, May 24, 2007 9:47 AM
> > > >> To: Gianluca Interlandi
> > > >> Cc: namd-l_at_ks.uiuc.edu
> > > >> Subject: Re: namd-l: Why is SHAKE not being used in typical NAMD simulations ?
> > > >>
> > > >>
> > > >> Please note that this post is not about using multiple time stepping, and
> > > >> energy drifts. It is about SHAKE. I am hoping some of the developers will
> > > >> be able to tell us why SHAKE is not recommended in NAMD, while it is in
> > > >> other programs ?
> > > >>
> > > >> ----------------------------
> > > >> Himanshu Khandelia, PhD
> > > >> Research Assistant Professor (Postdoc)
> > > >> MEMPHYS, Center for Membrane Physics: www.memphys.sdu.dk University of Southern Denmark (SDU) Odense M 5230, Denmark
> > > >>
> > > >> Phone: +4565503510
> > > >> email: hkhandel_at_memphys.sdu.dk
> > > >> WWW: www.memphys.sdu.dk/~hkhandel
> > > >> -----------------------------
> > > >>
> > > >>
> > > >>
> > > >> On Wed, 23 May 2007, Gianluca Interlandi wrote:
> > > >>
> > > >>
> > > >>> There have been already discussions in the NAMD list about the use of
> > > >>> different timesteps. In particular, it seems that the use of a multi
> > > >>> stepping algorithm seems to cause an energy drift:
> > > >>>
> > > >>> http://www.ks.uiuc.edu/~sotomayo/private/answer.html
> > > >>>
> > > >>> http://www.ks.uiuc.edu/Research/namd/mailing_list/namd-l/5385.html
> > > >>>
> > > >>> Usually, the conservation of energy is used as a "quality control" for
> > > >>> the
> > > >>> algorithm and timestep used. Thus if you are concerned about whether the
> > > >>> chosen timestep is good or not the first thing to do would be to check
> > > >>> whether the energy and temperature are conserved.
> > > >>>
> > > >>> Gianluca
> > > >>>
> > > >>> On Wed, 23 May 2007, L. Michel Espinoza-Fonseca wrote:
> > > >>>
> > > >>>
> > > >>>> Note: I mentioned this thing about being reliable enough because
> > > >>>> others have told me that, so I just said what I was told by my
> > > >>>> colleagues, and it doesn't represent my own view :).
> > > >>>>
> > > >>>> 2007/5/23, Eric Cyr <ericcyr_at_uiuc.edu>:
> > > >>>>
> > > >>>>> What is meant by "not reliable enough"? I can think of a couple of
> > > >>>>> things this could mean.
> > > >>>>>
> > > >>>>> Eric
> > > >>>>>
> > > >>>>> On 5/23/07, L. Michel Espinoza-Fonseca <mef_at_ddt.biochem.umn.edu>
> > > >>>>> wrote:
> > > >>>>>
> > > >>>>>> I myself have asked this question before. My answer (as before)
> > > >>>>>> is no idea. Perhaps some people think that SHAKE and MTS schemes
> > > >>>>>> are not reliable enough (at least this is what some colleagues
> > > >>>>>> have told me before).
> > > >>>>>>
> > > >>>>>> Cheers,
> > > >>>>>> Michel
> > > >>>>>>
> > > >>>>>> 2007/5/23, Himanshu Khandelia <hkhandel_at_memphys.sdu.dk>:
> > > >>>>>>
> > > >>>>>>> Hello,
> > > >>>>>>>
> > > >>>>>>> Most NAMD papers describe a simulation timestep of 1 fs, no
> > > >>>>>>> shake, a nonbondedfreq of 2, and an fullelecfreq. of 4. This
> > > >>>>>>> is also what is recommended in most NAMD tutorials.
> > > >>>>>>>
> > > >>>>>>> However, use of a 2 fs timestep, a value of 1 for both the
> > > >>>>>>> nonbondedfreq and fullelecfreq results in 15-25 % faster
> > > >>>>>>> performance in my tests. I can provide more details of the
> > > >>>>>>> tests if desired, but surely these tests must
> > > >>>>>>> have already been performed.
> > > >>>>>>>
> > > >>>>>>> So why is SHAKE/RATTLE and a larger time step not being used
> > > >>>>>>> for most simulations?
> > > >>>>>>>
> > > >>>>>>> Thank you for the help,
> > > >>>>>>>
> > > >>>>>>> -Himanshu
> > > >>>>>>>
> > > >>>>>>> ----------------------------
> > > >>>>>>> Himanshu Khandelia, PhD
> > > >>>>>>> Research Assistant Professor (Postdoc)
> > > >>>>>>> MEMPHYS, Center for Membrane Physics: www.memphys.sdu.dk
> > > >>>>>>> University of Southern Denmark (SDU) Odense M 5230, Denmark
> > > >>>>>>>
> > > >>>>>>> Phone: +4565503510
> > > >>>>>>> email: hkhandel_at_memphys.sdu.dk
> > > >>>>>>> WWW: www.memphys.sdu.dk/~hkhandel
> > > >>>>>>> -----------------------------
> > > >>>>>>>
> > > >>>>>>>
> > > >>>>>>>
> > > >>>>>>>
> > > >>>>> --
> > > >>>>> 4330 Siebel Center
> > > >>>>> 201 N. Goodwin Ave.
> > > >>>>> Urbana, IL 61801
> > > >>>>> http://www.cse.uiuc.edu/~ericcyr/
> > > >>>>>
> > > >>>>>
> > > >>> -----------------------------------------------------
> > > >>> Dr. Gianluca Interlandi gianluca_at_u.washington.edu
> > > >>> +1 (206) 685 4435
> > > >>> +1 (206) 714 4303
> > > >>> http://biocroma.unizh.ch/gianluca/
> > > >>>
> > > >>> Postdoc at the Department of Bioengineering
> > > >>> at the University of Washington, Seattle WA U.S.A.
> > > >>> -----------------------------------------------------
> > > >>>
> > > >>>
> > >
> >
> > -----------------------------------------------------
> > Dr. Gianluca Interlandi gianluca_at_u.washington.edu
> > +1 (206) 685 4435
> > +1 (206) 714 4303
> > http://biocroma.unizh.ch/gianluca/
> >
> > Postdoc at the Department of Bioengineering
> > at the University of Washington, Seattle WA U.S.A.
> > -----------------------------------------------------
>
> -----------------------------------------------------
> Dr. Gianluca Interlandi gianluca_at_u.washington.edu
> +1 (206) 685 4435
> +1 (206) 714 4303
> http://biocroma.unizh.ch/gianluca/
>
> Postdoc at the Department of Bioengineering
> at the University of Washington, Seattle WA U.S.A.
> -----------------------------------------------------

This archive was generated by hypermail 2.1.6 : Wed Feb 29 2012 - 05:20:17 CST