Adaptive Ensemble Biomolecular Simulations at Scale
Recent advances in both theory and methods have created opportunities to simulate biomolecular processes more efficiently using adaptive ensemble simulations. Ensemble-based simulations are used widely to compute a number of individual simulation trajectories and analyze statistics across them. Adaptive ensemble simulations offer a further level of sophistication and flexibility by enabling high-level algorithms to control simulations-based on intermediate results. Novel high-level algorithms require sophisticated approaches to utilize the intermediate data during runtime. Thus, there is a need for scalable software systems to support adaptive ensemble-based applications. We describe three different types of adaptations and propose four operations necessary to support these adaptations. We identify and address the challenges of expressibility, instantiation and implementation of the four operations. We enhance the Ensemble Toolkit -- an ensemble execution system -- with abstractions to support these operations. We characterize the overhead of supporting adaptive capabilties in the toolkit at production scale. We implement two high-level adaptive algorithms: expanded ensemble and Markov state modeling. We highlight scientific advantages enabled by the novel capabilities of our approach and implementation on three distinct platforms.
READ FULL TEXT