Accelerating Rosetta with OpenMM. Peter Eastman. RosettaCon, August 5, 2010

Similar documents
Molecular dynamics simulation. CS/CME/BioE/Biophys/BMI 279 Oct. 5 and 10, 2017 Ron Dror

A microsecond a day keeps the doctor away: Efficient GPU Molecular Dynamics with GROMACS

Parallelization of Molecular Dynamics (with focus on Gromacs) SeSE 2014 p.1/29

Efficient Molecular Dynamics on Heterogeneous Architectures in GROMACS

Efficient Parallelization of Molecular Dynamics Simulations on Hybrid CPU/GPU Supercoputers

FENZI: GPU-enabled Molecular Dynamics Simulations of Large Membrane Regions based on the CHARMM force field and PME

Introduction to Benchmark Test for Multi-scale Computational Materials Software

Applications of the Spring. Force: molecules

The Computational Microscope

Advanced Molecular Dynamics

Structural Bioinformatics (C3210) Molecular Mechanics

2008 Biowerkzeug Ltd.

The Fast Multipole Method in molecular dynamics

Using GPUs for faster LAMMPS particle simulations

Computational Biochemistry in the New Era of HPC. Imran Haque Department of Computer Science Stanford University

Advanced Molecular Molecular Dynamics

Establishing a CUDA Research Center at Penn State: Perspectives on GPU-Enabled Teaching and Research

Can a continuum solvent model reproduce the free energy landscape of a β-hairpin folding in water?

Directed Assembly of Functionalized Nanoparticles with Amphiphilic Diblock Copolymers. Contents

All-atom Molecular Mechanics. Trent E. Balius AMS 535 / CHE /27/2010

What I Did Last Summer

Introduction to numerical computations on the GPU

Course Introduction. SASSIE CCP-SAS Workshop. January 23-25, ISIS Neutron and Muon Source Rutherford Appleton Laboratory UK

Hybrid Vigor. Using Heterogeneous HPC to Accelerate Chemical Biology. Imran Haque Department of Computer Science Stanford University

Molecular Mechanics / ReaxFF

Calculation of ground states of few-body nuclei using NVIDIA CUDA technology

The Molecular Dynamics Simulation Process

Folding WT villin in silico Three folding simulations reach native state within 5-8 µs

Introduction to molecular dynamics

LAMMPS Performance Benchmark on VSC-1 and VSC-2

APPLICATION OF CUDA TECHNOLOGY FOR CALCULATION OF GROUND STATES OF FEW-BODY NUCLEI BY FEYNMAN'S CONTINUAL INTEGRALS METHOD

Markov State Models. Gregory R. Bowman Miller Fellow University of California, Berkeley

Accelerating incompressible fluid flow simulations on hybrid CPU/GPU systems

Dihedral Angles. Homayoun Valafar. Department of Computer Science and Engineering, USC 02/03/10 CSCE 769

Molecular Dynamics Simulation of a Biomolecule with High Speed, Low Power and Accuracy Using GPU-Accelerated TSUBAME2.

Molecular Dynamics Study of A Water Soluble, Upper Critical Solution Temperature Polymer. Yang Zhou

CECAM Tutorial Stuttgart, Oct. 2012

GPU-accelerated Computing at Scale. Dirk Pleiter I GTC Europe 10 October 2018

Supplementary Information for Atomistic Simulation of Spinodal Phase Separation Preceding Polymer Crystallization

Biomolecular modeling I

k θ (θ θ 0 ) 2 angles r i j r i j

FDS: Flexible Ligand and Receptor Docking with a Continuum Solvent Model and Soft-Core Energy Function

Molecular Dynamics Simulations. Dr. Noelia Faginas Lago Dipartimento di Chimica,Biologia e Biotecnologie Università di Perugia

Algorithm for Sparse Approximate Inverse Preconditioners in the Conjugate Gradient Method

TR A Comparison of the Performance of SaP::GPU and Intel s Math Kernel Library (MKL) for Solving Dense Banded Linear Systems

Molecular Dynamics. Molecules in motion

Simulating Soft Matter with ESPResSo, ESPResSo++ and VOTCA!

VMD: Visual Molecular Dynamics. Our Microscope is Made of...

Accelerated sampling of energy landscapes

Generate topology (Gromacs)

Kobe-Brown Simulation Summer School 2015 Project: DPD Simulation of a Membrane

Atomistic Modeling of Small-Angle Scattering Data Using SASSIE-web

GPU acceleration of Newton s method for large systems of polynomial equations in double double and quad double arithmetic

Why Proteins Fold? (Parts of this presentation are based on work of Ashok Kolaskar) CS490B: Introduction to Bioinformatics Mar.

The Molecular Dynamics Method

Introduction to Protein Structures - Molecular Graphics Tool

Accelerating Model Reduction of Large Linear Systems with Graphics Processors

Cosmology with Galaxy Clusters: Observations meet High-Performance-Computing

On Portability, Performance and Scalability of a MPI OpenCL Lattice Boltzmann Code

Bioengineering 215. An Introduction to Molecular Dynamics for Biomolecules

Investigation of an Unusual Phase Transition Freezing on heating of liquid solution

Supporting Information

Parallel Utility for Modeling of Molecular Aggregation

Computational Nanoscience

What is Classical Molecular Dynamics?

Molecular Dynamic Simulation Study of the Volume Transition of PNIPAAm Hydrogels

An FPGA Implementation of Reciprocal Sums for SPME

Perm State University Research-Education Center Parallel and Distributed Computing

Force fields, thermo- and barostats. Berk Hess

Block AIR Methods. For Multicore and GPU. Per Christian Hansen Hans Henrik B. Sørensen. Technical University of Denmark

Viscous Flow Computations with Molecular Dynamics


Welcome to MCS 572. content and organization expectations of the course. definition and classification

Parallel Algorithms for Semiclassical Quantum Dynamics

Computer Physics Communications. Massively parallel chemical potential calculation on graphics processing units

Supporting Online Material for

MOLECULAR DYNAMIC SIMULATION OF WATER VAPOR INTERACTION WITH VARIOUS TYPES OF PORES USING HYBRID COMPUTING STRUCTURES

The Molecular Dynamics Method

Enabling constant pressure hybrid Monte Carlo simulations using the GROMACS molecular simulation package

FPGA-based Acceleration of CHARMM-potential Minimization *

5.1. Hardwares, Softwares and Web server used in Molecular modeling

Alchemical free energy calculations in OpenMM

Our Microscope is Made of...

Mayer Sampling Monte Carlo Calculation of Virial. Coefficients on Graphics Processors

Level-3 BLAS on a GPU

Journal of Pharmacology and Experimental Therapy-JPET#172536

Introduction to model potential Molecular Dynamics A3hourcourseatICTP

Crystal Structure Prediction using CRYSTALG program

Computational Physics. J. M. Thijssen

Antti-Pekka Hynninen, 5/10/2017, GTC2017, San Jose CA

q lm1 q lm2 q lm3 (1) m 1,m 2,m 3,m 1 +m 2 +m 3 =0 m 1 m 2 m 3 l l l

Computational Molecular Biophysics. Computational Biophysics, GRS Jülich SS 2013

Molecular dynamics simulation of Aquaporin-1. 4 nm

Explicit Ion, Implicit Water Solvation for Molecular Dynamics of Nucleic Acids and Highly Charged Molecules

MARTINI simulation details

Dynamics. capacities of. (A.I.1) (E b ), bond. E total stretching (A.I.2) (A.I.3) A.I.1. Ebond force (A.I.4) (A.I.5)

Computation of non-bonded interactions: Part 1

Dense Arithmetic over Finite Fields with CUMODP

Gromacs Workshop Spring CSC

Piz Daint & Piz Kesch : from general purpose supercomputing to an appliance for weather forecasting. Thomas C. Schulthess

Transcription:

Accelerating Rosetta with OpenMM Peter Eastman RosettaCon, August 5, 2010

What is OpenMM? OpenMM is a library for molecular modeling on high performance architectures.

Performance 600 500 502 400 ns/day 300 200 100 0 171 OpenMM AMBER GPU AMBER CPU 3 Villin headpiece, 576 atoms, GBSA, 2 fs time step, no cutoff, run on one GPU core of a Tesla S1070 and one CPU core of a 2.5 GHz Xeon E5420 3

The OpenMM Vision Rosetta AMBER Gromacs Custom Codes... Nvidia GPU ATI GPU Multi-core CPU Cell Processor Cluster

The OpenMM Vision Rosetta AMBER Gromacs Custom Codes... OpenMM Nvidia GPU ATI GPU Multi-core CPU Cell Processor Cluster

Features Standard Forces Standard bonded terms (harmonic bonds, angles, etc.) Coulomb and Lennard Jones nonbonded forces Reaction field, Ewald, and PME for long range Coulomb forces GBSA implicit solvent 6

Features (continued) Integrators 7 Verlet (leapfrog) Langevin Brownian Temperature/Pressure Coupling Andersen thermostat Monte Carlo barostat Energy Minimization L-BFGS

Custom Forces Allow arbitrary algebraic expressions for forces Example: Morse Potential CustomBondForce* bonds = new CustomBondForce("D*(1-exp(a*(r0-r)))^2"); bonds->addperbondparameter("d"); bonds->addperbondparameter("a"); bonds->addperbondparameter("r0"); 8

Custom Forces (continued) Algebraic expressions are converted to OpenCL code and compiled Very little performance cost A powerful tool for research and prototyping Available custom forces Bond/angle/torsion bonded terms Nonbonded pairwise forces External forces Hydrogen bond forces Implicit solvent models 9

Rosetta Hbond Potential Hbond connects donor and acceptor groups E = E δ (δ)f θ (θ)f Ψ (Ψ) + D2 D1 \ θ δ Ψ A1 A2 F sr (δ)( E θ,sr (θ)f Ψ (Ψ) + E Ψ,sr (Ψ)F θ (θ))+ F lr (δ)( E θ,lr (θ)f Ψ (Ψ) + E Ψ,lr (Ψ)F θ (θ)) E δ (δ), E θ,sr (θ), E θ,lr (θ), E Ψ,sr (Ψ), E Ψ,lr (Ψ) are derived from structure data F θ (θ), F Ψ (Ψ), F sr (δ), F lr (δ) are piecewise linear fading functions 10

OpenMM Implementation string energy = "ed(d)*fadetheta*fadepsi+" "fadeshort*(ethetashort(ctheta)*fadepsi+epsishort(cpsi)*fadetheta)+" "fadelong*(ethetalong(ctheta)*fadepsi+epsilong(cpsi)*fadetheta);" "fadeshort=min(min(100*(d-0.14), 1-25*(d-0.19)), 1);" "fadelong=min(25*(d-0.19), 1-(1/0.07)*(d-0.23));" "fadetheta=min(20*ctheta, 1);" "fadepsi=min(20*cpsi, 1);" "d=distance(a1,d1); ctheta=-cos(angle(a1,d1,d2)); cpsi=-cos(angle(d1,a1,a2))"; CustomHbondForce* force = new CustomHbondForce(energy); force->addfunction("ed", createdistancetable(), 0.14, 0.3, true); force->addfunction("ethetashort", createshortrangethetatable(), 0, 1, true); force->addfunction("ethetalong", createlongrangethetatable(), 0, 1, true); force->addfunction("epsishort", createshortrangepsitable(), 0, 1, true); force->addfunction("epsilong", createlongrangepsitable(), 0, 1, true); 11

A Complication The energy also depends on the type of chemical groups interacting E δ (δ), E θ,sr (θ), E θ,lr (θ), E Ψ,sr (Ψ), E Ψ,lr (Ψ) all have multiple versions for different types of acceptors 12

The Solution Define a per-acceptor parameter to specify the type Append the different versions of each function Use the parameter to select the correct range 0 1 2 3 Type 0 Type 1 Type 2 13

Implementation with Types string energy = "ed(d-0.14+type*0.26)*fadetheta*fadepsi*step(d-0.14)+" "fadeshort*(ethetashort(ctheta+type)*fadepsi*step(ctheta)+" "epsishort(cpsi+type)*fadetheta*step(cpsi))+" "fadelong*(ethetalong(ctheta+type)*fadepsi*step(ctheta)+" "epsilong(cpsi+type)*fadetheta*step(cpsi));" "fadeshort=min(min(100*(d-0.14), 1-25*(d-0.19)), 1);" "fadelong=min(25*(d-0.19), 1-(1/0.07)*(d-0.23));" "fadetheta=min(20*ctheta, 1);" "fadepsi=min(20*cpsi, 1);" "d=distance(a1,d1); ctheta=-cos(angle(a1,d1,d2)); cpsi=-cos(angle(d1,a1,a2))"; 14

Acknowledgements Vijay Pande Rhiju Das Kyle Beauchamp NIH https://simtk.org/home/openmm 15