Molecular Dynamics Simulation on Commodity Shared-Memory Multiprocessor Systems with Lightweight Multithreading

John Thornley, Maria Hui, Hao Li, Tahir Cagin, and William Goddard III

High Performance Computing Symposium (HPC '99),
1999 Advanced Simulation Technologies Conference (ASTC 1999)


The simulation of N-body particle systems has many important applications in science and engineering, ranging in scale from molecular dynamics to astrophysics. Because of the time required to simulate realistic numbers of particles, a great deal of research has been devoted to parallel N-body simulation. Much of this research has focused on the development of sophisticated algorithms for data distribution and workload balancing on message-passing systems. In this paper, we investigate the implications on parallel N-body simulation of the recent advent of powerful, low-cost, commodity shared-memory multiprocessor systems with support for lightweight multithreading. As the basis of our investigation, we have ported a large parallel molecular dynamics simulation program (MPSIM), developed at the Materials and Process Simulation Center at Caltech, to a lightweight multithreaded implementation for Intel Pentium family multiprocessors running Windows NT. We compare the performance of our version of MPSIM running on commodity multiprocessors with that of previous versions running on expensive scientific supercomputers. In particular, we test the hypothesis that data distribution and workload balancing are significantly simpler on commodity shared-memory multiprocessors than on traditional supercomputers. Our experiments indicate that (i) the performance of commodity multiprocessors is competitive with that of expensive high-end scientific platforms, and (ii) parallel N-body simulation algorithms can be made considerably simpler and more flexible by taking advantage of shared memory and lightweight multithreading. With the trend in commodity multiprocessor systems toward lower prices, faster chips, and larger numbers of processors, simulations that now require supercomputers will soon be possible on inexpensive multiprocessor PCs. It is important that we learn how to de-velop the most effective simulation algorithms for these exciting new platforms.