Molecular Dynamics Collection of [charged] atoms, with bonds – Newtonian mechanics – Relatively small #of atoms (100K – 10M) At each time-step – Calculate.

Slides:



Advertisements
Similar presentations
Time averages and ensemble averages
Advertisements

Simulazione di Biomolecole: metodi e applicazioni giorgio colombo
Formulation of an algorithm to implement Lowe-Andersen thermostat in parallel molecular simulation package, LAMMPS Prathyusha K. R. and P. B. Sunil Kumar.
1 NAMD - Scalable Molecular Dynamics Gengbin Zheng 9/1/01.
A Digital Laboratory “In the real world, this could eventually mean that most chemical experiments are conducted inside the silicon of chips instead of.
10/21/20091 Protein Explorer: A Petaflops Special-Purpose Computer System for Molecular Dynamics Simulations Makoto Taiji, Tetsu Narumi, Yousuke Ohno,
Computational Solid State Physics 計算物性学特論 第2回 2.Interaction between atoms and the lattice properties of crystals.
Abhinav Bhatele, Laxmikant V. Kale University of Illinois at Urbana-Champaign Sameer Kumar IBM T. J. Watson Research Center.
Abhinav Bhatele, Laxmikant V. Kale University of Illinois at Urbana-Champaign Sameer Kumar IBM T. J. Watson Research Center.
Molecular Dynamics Simulation (a brief introduction)
Parallel Decomposition-based Contact Response Fehmi Cirak California Institute of Technology.
StreamMD Molecular Dynamics Eric Darve. MD of water molecules Cutoff is used to truncate electrostatic potential Gridding technique: water molecules are.
Molecular Dynamics Molecular dynamics Some random notes on molecular dynamics simulations Seminar based on work by Bert de Groot and many anonymous Googelable.
Molecular Dynamics Classical trajectories and exact solutions
Topology Aware Mapping for Performance Optimization of Science Applications Abhinav S Bhatele Parallel Programming Lab, UIUC.
© David Kirk/NVIDIA and Wen-mei W. Hwu, ECE 498AL, University of Illinois, Urbana-Champaign 1 ECE 498AL Programming Massively Parallel Processors.
Load Balancing in Charm++ Eric Bohm. How to diagnose load imbalance?  Often hidden in statements such as: o Very high synchronization overhead  Most.
1 Case Study I: Parallel Molecular Dynamics and NAMD: Laxmikant Kale Parallel Programming Laboratory University of Illinois at.
Deformation of Nanotubes Yang Xu and Kenny Higa MatSE 385
Algorithms and Software for Large-Scale Simulation of Reactive Systems _______________________________ Ananth Grama Coordinated Systems Lab Purdue University.
1 Scalable Molecular Dynamics for Large Biomolecular Systems Robert Brunner James C Phillips Laxmikant Kale.
Molecular Dynamics Sathish Vadhiyar Courtesy: Dr. David Walker, Cardiff University.
Computational issues in Carbon nanotube simulation Ashok Srinivasan Department of Computer Science Florida State University.
1 Introduction to Parallel Computing Issues Laxmikant Kale Parallel Programming Laboratory Dept. of Computer Science And Theoretical.
1 CE 530 Molecular Simulation Lecture 17 Beyond Atoms: Simulating Molecules David A. Kofke Department of Chemical Engineering SUNY Buffalo
Scheduling Many-Body Short Range MD Simulations on a Cluster of Workstations and Custom VLSI Hardware Sumanth J.V, David R. Swanson and Hong Jiang University.
Basics of molecular dynamics. Equations of motion for MD simulations The classical MD simulations boil down to numerically integrating Newton’s equations.
E-science grid facility for Europe and Latin America E2GRIS1 André A. S. T. Ribeiro – UFRJ (Brazil) Itacuruça (Brazil), 2-15 November 2008.
P ARALLELIZATION IN M OLECULAR D YNAMICS By Aditya Mittal For CME346A by Professor Eric Darve Stanford University.
Molecular Dynamics Simulations on a GPU in OpenCL Alex Cappiello.
NIH Resource for Biomolecular Modeling and Bioinformatics Beckman Institute, UIUC NAMD Development Goals L.V. (Sanjay) Kale Professor.
NIH Resource for Biomolecular Modeling and Bioinformatics Beckman Institute, UIUC NAMD Development Goals L.V. (Sanjay) Kale Professor.
An FPGA Implementation of the Ewald Direct Space and Lennard-Jones Compute Engines By: David Chui Supervisor: Professor P. Chow.
Overcoming Scaling Challenges in Bio-molecular Simulations Abhinav Bhatelé Sameer Kumar Chao Mei James C. Phillips Gengbin Zheng Laxmikant V. Kalé.
Molecular Mechanics Studies involving covalent interactions (enzyme reaction): quantum mechanics; extremely slow Studies involving noncovalent interactions.
1 NAMD: Biomolecular Simulation on Thousands of Processors James C. Phillips Gengbin Zheng Sameer Kumar Laxmikant Kale Parallel.
1 Scaling Applications to Massively Parallel Machines using Projections Performance Analysis Tool Presented by Chee Wai Lee Authors: L. V. Kale, Gengbin.
LLNL-PRES DRAFT This work was performed under the auspices of the U.S. Department of Energy by Lawrence Livermore National Laboratory under contract.
Molecular Modelling - Lecture 2 Techniques for Conformational Sampling Uses CHARMM force field Written in C++
Scalability and interoperable libraries in NAMD Laxmikant (Sanjay) Kale Theoretical Biophysics group and Department of Computer Science University of Illinois.
Dynamics of Uniform Circular Motion Uniform Circular Motion Centripetal Acceleration Centripetal Force Satellites in Circular Orbits Vertical Circular.
Parallel Molecular Dynamics Application Oriented Computer Science Research Laxmikant Kale
Anton, a Special-Purpose Machine for Molecular Dynamics Simulation By David E. Shaw et al Presented by Bob Koutsoyannis.
1 Scaling Molecular Dynamics to 3000 Processors with Projections: A Performance Analysis Case Study Laxmikant Kale Gengbin Zheng Sameer Kumar Chee Wai.
IPDPS Workshop: Apr 2002PPL-Dept of Computer Science, UIUC A Parallel-Object Programming Model for PetaFLOPS Machines and BlueGene/Cyclops Gengbin Zheng,
Review Session BS123A/MB223 UC-Irvine Ray Luo, MBB, BS.
ECE 1747H: Parallel Programming Lecture 2-3: More on parallelism and dependences -- synchronization.
NGS Workshop: Feb 2002PPL-Dept of Computer Science, UIUC Programming Environment and Performance Modeling for million-processor machines Laxmikant (Sanjay)
Molecular Mechanics (Molecular Force Fields). Each atom moves by Newton’s 2 nd Law: F = ma E = … x Y Principles of M olecular Dynamics (MD): F =
A Pattern Language for Parallel Programming Beverly Sanders University of Florida.
1 Rocket Science using Charm++ at CSAR Orion Sky Lawlor 2003/10/21.
Case Study 5: Molecular Dynamics (MD) Simulation of a set of bodies under the influence of physical laws. Atoms, molecules, forces acting on them... Have.
1 Major analytical/theoretical techniques Typically involves simple algebraic formulas, and ratios –Typical variables are: data size (N), number of processors.
Using Charm++ with Arrays Laxmikant (Sanjay) Kale Parallel Programming Lab Department of Computer Science, UIUC charm.cs.uiuc.edu.
Molecular dynamics (MD) simulations  A deterministic method based on the solution of Newton’s equation of motion F i = m i a i for the ith particle; the.
CHEM 112 Spring 2011 Exam 1 Review.
Parallel Molecular Dynamics A case study : Programming for performance Laxmikant Kale
Molecular Simulation at MCSR Brian W. Hopkins Mississippi Center for Supercomputing Research 9 October 2008.
Massively Parallel Cosmological Simulations with ChaNGa Pritish Jetley, Filippo Gioachin, Celso Mendes, Laxmikant V. Kale and Thomas Quinn.
1 Scalable Cosmological Simulations on Parallel Machines Filippo Gioachin¹ Amit Sharma¹ Sayantan Chakravorty¹ Celso Mendes¹ Laxmikant V. Kale¹ Thomas R.
Flexibility and Interoperability in a Parallel MD code Robert Brunner, Laxmikant Kale, Jim Phillips University of Illinois at Urbana-Champaign.
Computational Techniques for Efficient Carbon Nanotube Simulation
Chapter 2 Molecular Mechanics
Implementing Simplified Molecular Dynamics Simulation in Different Parallel Paradigms Chao Mei April 27th, 2006 CS498LVK.
Scalable Molecular Dynamics for Large Biomolecular Systems
Sathish Vadhiyar Courtesy: Dr. David Walker, Cardiff University
Computational Techniques for Efficient Carbon Nanotube Simulation
IXPUG, SC’16 Lightning Talk Kavitha Chandrasekar*, Laxmikant V. Kale
Molecular Dynamics(MD)
Higher Level Languages on Adaptive Run-Time System
Presentation transcript:

Molecular Dynamics Collection of [charged] atoms, with bonds – Newtonian mechanics – Relatively small #of atoms (100K – 10M) At each time-step – Calculate forces on each atom Bonds: Non-bonded: electrostatic and van der Waal ’ s – Short-distance: every timestep – Long-distance: using PME (3D FFT) – Multiple Time Stepping : PME every 4 timesteps – Calculate velocities and advance positions Challenge: femtosecond time-step, millions needed! Collaboration with K. Schulten, R. Skeel, and coworkers

Lennart-Jones Dynamics We will look at a simpler problem: – Gas atoms moving around – Temperature tells you the average velocity – The only forces acting on them are van der Waals Basically, if they come too close, they are repelled, Otherwise, there is a small attractive force between all atoms Algorithm: simulate each time step – Each atom has a mass, coordinates, and initial velocity – Calculate forces on each atom due to nearby atoms – Using forces, and Newton’s laws of motion, calculate acceleration, velocity, and update coordinates

Spatial Decomposition Via Charm Atoms distributed to cubes based on their location Size of each cube : Just a bit larger than cut-off radius Communicate only with neighbors Work: for each pair of nbr objects C/C ratio: O(1) However: Load Imbalance Limited Parallelism Cells, Cubes or “ Patches ” Charm++ is useful to handle this

Object Based Parallelization for MD: Force Decomposition + Spatial Decomposition Now, we have many objects to load balance: Each diamond can be assigned to any proc. Number of diamonds (3D): –14·Number of Patches –2-away variation: –Half-size cubes –5x5x5 interactions –3-away interactions: 7x7x7

Parallelization Using Charm++ The computation is decomposed into “natural” objects of the application, which are assigned to processors by Charm++ RTS

Expressing in Charm++ Two chare arrays: – Cells: a 3D array of chares – Pairs: one object for each “neighboring” chare What is the dimensionality of “pairs”? – Idea 1: make it a 3D array.. Does it work? – Idea 2: Make it a 1D array, Explicitly assign indices to chares: the pair object between Cells[2,3,4] and Cells[2,3,5] is Pairs[someIndex]. – Idea 3: Make it a 6D array Pairs[2,3,4,2,3,5] But: (a) it is sparse and (b) symmetry? Do we also have Pairs[2,3,5,2,3,4] Use only one of them.. (say “smaller” in dictionary order)

LJdynamics – Main chare entry void run() { when computesCreated() atomic { computeArray.doneInserting(); cellArray.run(); computeArray.run(); } when done() atomic { CkExit(); } }; //end of run

LJdynamics - Cell entry void run() { for(stepCount = 1; stepCount <= finalStepCount; stepCount++) { atomic { sendPositions(); } for(forceCount=0; forceCount < inbrs; forceCount++) when receiveForces[stepCount](int iter, vec3 forces[n], int n) atomic { addForces(forces); } atomic { updateProperties(); } if ((stepCount % MIGRATE_STEPCOUNT) == 0) { atomic { sendParticles(); } when statements for receiving particles from neighbors } atomic {contribute(0, CkReduction::NULL, CkCallback(CkReductionTarget(Main,done),mainProxy)); }

LJdynamics - Pair entry void run() { for(stepCount = 1; stepCount <= finalStepCount; stepCount++) { if (thisIndex.x1==thisIndex.x2 && thisIndex.y1==thisIndex.y2 && thisIndex.z1==thisIndex.z2) when calculateForces[stepCount](ParticleData *data) atomic { selfInteract(data); } else { when calculateForces[stepCount] (ParticleData *data) atomic { bufferedData = data; } when calculateForces[stepCount](ParticleData *data) atomic { interact(data); } } };