Alternate Title:Parallel molecular dynamics - how we evolved from 10 cores to heterogeneous GPU acceleration and petascale parallelization
Molecular dynamics has come a long way the last 20 years; what was once a small esoteric technique in theoretical physics is now a standard tool of molecular biology and other fields. While some of this performance is due to faster computers, it would never have happened without dozens of groups worldwide investing decades of effort in new algorithms, ideas for new interaction models, parameterization, code optimization, and not least parallelization in high performance computing. Our project GROMACS was started in the mid 1990s, and at the time we considered it a great boost that we could parallelize efficiently over a handful of computers using a slow network. The code has since grown to a very large open source project with thousands of users and tens of thousands of downloads. Over the last 15 years, GROMACS has evolved to scale efficiently on some of the largest resources in the world, and in the latest versions we have had to rewrite most of the core algorithms to first make it possible to use stream computing accelerators like GPUs, and then combine these with traditional CPUs on many nodes in a heterogeneous parallelization scheme. Here, I will describe some of this work, including events as recently as spring 2013, why we made the decisions we did (including some bad examples), what we are working on right now, and I will discuss some of the general challenges that face most HPC codes that both want to stay relevant, accurate, fast, and easy to work with in an ever-changing computing landscape.
University of Illinois at Urbana-Champaign
Erik did his PhD in Stockholm 1996-2001 on theoretical biophysics and the modeling of membranes both with theoretical and computational methods. After a shorter 6-month visiting position at Groningen University, Netherlands, 2002-2004 were spent as a postdoctoral scholar at Stanford University, followed by a year at the Pasteur Institute in Paris. Since 2005 he is affiliated with Stockholm University in Sweden, where he leads a 15-20 person research team at the new Science for Life Laboratory working on membrane proteins, electrophysiology, bioinformatics, molecular dynamics simulation, free energy calculations, high performance computing and not least development of the GROMACS molecular dynamics toolkit. He also has an appointment at the Royal Institute of Technology on Stockholm where most of the computational parts of the team is affiliated.
I have a very broad interest in all aspects of biomolecular structure and function, and in particular any scientific techniques that can help us understand membrane proteins and ion channels. While many of these are computational, we also have an electrophysiology lab in the group to be able to test hypotheses for the ion channels we work with. On the HPC side, we are entirely focused on the actual scientific impact we can get from HPC, but to enable this we need to invest quite significant efforts in getting molecular simulation and bioinformatics tools to use next-generation heterogeneous supercomputers efficiently. In particular, this means we currently spend a lot of time on stream computing (GPU) accelerators as well as parallelization techniques.
We're always looking for skilled students and postdoctoral candidates in these areas – the easiest way to reach me is by email.
Researchers should cite this work as follows:
Global Center Room 369, New York University, New York, NY