Talk- John Eblen
Micromanaging Threads for Faster MD Simulations
The past decade has seen a rapid increase in the number of cores on processors, especially processors for HPC (high-performance computing) clusters. To take advantage of this new resource, HPC developers frequently rely on threading to parallelize tasks, such as computational loops, or to run tasks asynchronously, such as overlapping computation and communication code. HPC software demands high performance, but common threading frameworks tend to lack flexibility or require unwanted overhead. In this talk, I'll discuss a new threading framework under development, called the Static Thread Scheduler (STS), which is designed to address this problem. STS provides flexibility in assigning threads to tasks and eliminates overhead by being static rather than dynamic. I'll also discuss how we are integrating STS into GROMACS, a popular molecular dynamics package, to replace the existing OpenMP threading and improve performance of MD simulations.