ProtoMol, an object-oriented framework for prototyping novel algorithms for molecular dynamics

被引:53
作者
Matthey, T [1 ]
Cickovski, T
Hampton, S
Ko, A
Ma, Q
Nyerges, M
Raeder, T
Slabach, T
Izaguirre, JA
机构
[1] Univ Bergen, Dept Informat, N-5020 Bergen, Norway
[2] Univ Notre Dame, Dept Comp Sci & Engn, Notre Dame, IN 46556 USA
[3] New Jersey Inst Technol, Dept Comp Sci, Newark, NJ 08854 USA
来源
ACM TRANSACTIONS ON MATHEMATICAL SOFTWARE | 2004年 / 30卷 / 03期
关键词
algorithms; design; performance; fast electrostatic methods; incremental parallelism; molecular dynamics; multigrid; multiple time-stepping integration; object-oriented framework;
D O I
10.1145/1024074.1024075
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
PROTOMOL is a high-performance framework in C++ for rapid prototyping of novel algorithms for molecular dynamics and related applications. Its flexibility is achieved primarily through the use of inheritance and design patterns (object-oriented programming): Performance is obtained by using templates that enable generation of efficient code for sections critical to performance (generic programming). The framework encapsulates important optimizations that can be used by developers, such as parallelism in the force computation. Its design is based on domain analysis of numerical integrators for molecular dynamics (MD) and of fast solvers for the force computation, particularly due to electrostatic interactions. Several new and efficient algorithms are implemented in PROTOMOL. Finally, it is shown that PROTOMOL'S sequential performance is excellent when compared to a leading MD program, and that it scales well for moderate number of processors. Binaries and source codes for Windows, Linux, Solaris, IRIX, HP-UX, and AIX platforms are available under open source license at http://protomol.sourceforge.net.
引用
收藏
页码:237 / 265
页数:29
相关论文
共 53 条
[1]  
ALEXANDRESCU A, 2001, MODERN CPLUS PLUS DE
[2]  
Allen M. P., 2009, Computer Simulation of Liquids
[3]  
AMMA E, 1995, DESIGN PATTERNS ELEM
[5]  
ANDERSON E, 1999, LAPACKS USERS GUIDE
[6]  
[Anonymous], P 2003 ACM S APPL CO
[7]  
BEAZLEY DM, 1996, P SUP 96
[8]   DANGERS OF MULTIPLE TIME-STEP METHODS [J].
BIESIADECKI, JJ ;
SKEEL, RD .
JOURNAL OF COMPUTATIONAL PHYSICS, 1993, 109 (02) :318-328
[9]  
Blackford L. S., 1997, ScaLAPACK user's guide
[10]  
Boghossian N, 1999, LECT NOTES COMPUT SC, V1668, P330