[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [IMP-dev] OpenMM



Cool. It shouldn't be too hard to use it as an MD backend for IMP (with supported for whatever restraints can be easily mapped onto their standard terms).


On Sep 24, 2009, at 4:05 PM, Andrej Sali wrote:

John:

It was good to see you too - you never change - always smiling!

Thanks for this pointer - I cc-ed the whole lab so everybody can check it out and see if it is helpful for their project. It does look as if at least our IMP (and MODELLER) developers should take a very good look.

Many thanks again,

Andrej

Begin forwarded message:

From: John Chodera <>
Date: September 24, 2009 1:27:39 PM PDT
To: Andrej Sali <>
Subject: OpenMM

Hi Andrej,

It was good to run into you again today! It's been far too long since
I've been back to visit folks at UCSF, I think!

I wanted to send more information on the OpenMM toolkit that I had
mentioned earlier.  Vijay Pande (among others) at Stanford is helping
guide the team that is developing it. The project itself is LGPL, and
can be obtained from the SimTK site here:

http://simtk.org/home/openmm

The toolkit contains a simplified API that makes it very easy to plug
in the molecular mechanics engine, as well as a number of
implementations of this API for either CPUs or NVIDIA GPUs (with an
OpenCL implementation coming soon).  The current NVIDIA GPU
implementation is almost embarrassingly fast: Using a modern GB/SA
solvent model with no cutoffs, you can crank out simulations 500 -
1000 times faster than on single CPU cores. They've also recently put
in explicit solvent simulation capability with PME, though it's not
quite as fast.  The size of the system you can simulate is limited
only by the amount of graphics card memory you have, but even standard
gaming cards like the NVIDIA GeForce GTX 285 have 1 GB and can fit
probably thousands of residues.

The toolkit is in C++, but there is also a set of Python bindings
(wrapped via SWIG) available here:

https://simtk.org/home/pyopenmm

They're still working toward a 1.0 release, so some of the features
that will be most useful for reimplementing MODELLER restraints aren't
in yet, but will be in there soon.  The drawback is that, to get the
enormous speedup, all force calculations must be done on the GPU,
which typically require special coding for special force terms.  They
currently have standard harmonic bond and angle terms, periodic
torsion terms, Lennard-Jones and Coulomb terms, a couple of GB models, and a number of integrators and thermostats. What is most exciting is their 'CustomNonbondedForce', where you simply specify a *string* that is a Mathematica-like algebraic expression for your interatomic energy term, as well as algebraic expressions for parameter mixing rules, and
it will automatically differentiate it and figure out how to compute
the forces on the GPU for you!  A similar 'CustomBondedForce' will be
added soon that will allow easy implementation of all kinds of
MODELLER restraints.

I've used OpenMM recently to implement a new code for running free
energy calculations [http://simtk.org/home/yank], and I've been very
impressed with how well it works.  Feel free to pass my contact info
on to anyone who ends up playing with it in your lab and might have
questions.

All the best,

John

--
John D. Chodera
QB3-Berkeley Fellow, University of California, Berkeley
email: 
mobile: 415.867.7384
url: http://www.choderalab.org
<friedrichs-openmm.pdf>
--
Andrej Sali, Ph.D.
Professor, Department of Bioengineering and Therapeutic Sciences
Director, California Institute for Quantitative Biosciences at UCSF
Department of Pharmaceutical Chemistry
University of California at San Francisco
UCSF MC 2552
Byers Hall Room 503B
1700 4th Street
San Francisco, CA  94158-2330, USA
Tel +1 (415) 514-4227; Fax +1 (415) 514-4231
Assistant, Ms. Hilary Mahon, Tel +1 (415)514-4228; Lab +1 (415) 514-4233, 4258
Email ; Web http://salilab.org