当前位置: X-MOL 学术Comput. Phys. Commun. › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
Cyclically parallelized treecode for fast computations of electrostatic interactions on molecular surfaces
Computer Physics Communications ( IF 6.3 ) Pub Date : 2021-03-01 , DOI: 10.1016/j.cpc.2020.107742
Jiahui Chen , Weihua Geng , Daniel R. Reynolds

Abstract We study the parallelization of a flexible order Cartesian treecode algorithm for evaluating electrostatic potentials of charged particle systems in which N particles are located on the molecular surfaces of biomolecules such as proteins. When the well-separated condition is satisfied, the treecode algorithm uses a far-field Taylor expansion to compute O ( N log N ) particle-cluster interactions to replace the O ( N 2 ) particle–particle interactions. The algorithm is implemented using the Message Passing Interface (MPI) standard by creating identical tree structures in the memory of each task for concurrent computing. We design a cyclic order scheme to uniformly distribute spatially-closed target particles to all available tasks, which significantly improves parallel load balancing. We also investigate the parallel efficiency subject to treecode parameters such as Taylor expansion order p , maximum particles per leaf N 0 , and maximum acceptance criterion θ . This cyclically parallelized treecode can solve interactions among up to tens of millions of particles. However, if the problem size exceeds the memory limit of each task, a scalable domain decomposition (DD) parallelized treecode using an orthogonal recursive bisection (ORB) tree can be used instead In addition to efficiently computing the N -body problem of charged particles, our approach can potentially accelerate GMRES iterations for solving the boundary integral Poisson–Boltzmann equation.

中文翻译:

用于快速计算分子表面静电相互作用的循环并行树代码

摘要 我们研究了灵活阶笛卡尔树代码算法的并行化,用于评估带电粒子系统的静电势,其中 N 粒子位于蛋白质等生物分子的分子表面。当满足分离良好的条件时,树码算法使用远场泰勒展开来计算 O ( N log N ) 粒子簇相互作用来代替 O ( N 2 ) 粒子相互作用。该算法是使用消息传递接口 (MPI) 标准通过在每个任务的内存中创建相同的树结构来实现的,以进行并发计算。我们设计了一个循环顺序方案,将空间封闭的目标粒子均匀地分配给所有可用的任务,这显着改善了并行负载平衡。我们还研究了受制于树码参数的并行效率,例如泰勒展开阶 p 、每片叶子的最大粒子数 N 0 和最大接受标准 θ 。这种循环并行化的树代码可以解决多达数千万个粒子之间的相互作用。但是,如果问题大小超过每个任务的内存限制,则可以使用使用正交递归二分 (ORB) 树的可扩展域分解 (DD) 并行化树代码代替。除了有效计算带电粒子的 N 体问题外,我们的方法可能会加速 GMRES 迭代以求解边界积分 Poisson-Boltzmann 方程。这种循环并行化的树代码可以解决多达数千万个粒子之间的相互作用。但是,如果问题大小超过每个任务的内存限制,则可以使用使用正交递归二分 (ORB) 树的可扩展域分解 (DD) 并行化树代码代替。除了有效计算带电粒子的 N 体问题外,我们的方法可能会加速 GMRES 迭代以求解边界积分 Poisson-Boltzmann 方程。这种循环并行化的树代码可以解决多达数千万个粒子之间的相互作用。但是,如果问题大小超过每个任务的内存限制,则可以使用使用正交递归二分 (ORB) 树的可扩展域分解 (DD) 并行化树代码代替。除了有效计算带电粒子的 N 体问题外,我们的方法可能会加速 GMRES 迭代以求解边界积分 Poisson-Boltzmann 方程。
更新日期:2021-03-01
down
wechat
bug