基于OpenMP技术开发了三维显式物质点并行程序MPM3DMP。为了避免节点更新阶段的数据竞争,采用区域分解法将背景网格分解为均匀的子域,每个线程负责一个子域的节点变量更新,然后将更新后的节点变量装配到整体。在质点更新阶段采用了循环分解方法进行并行。针对Taylor杆碰撞的三种计算模型,在双IntelWoodcrest4核CPU服务器下进行了测试:粗模型在4核下加速比为3.82,在8核下为6.23,中模型在4核下加速比为3.79,在8核下加速比为6.23;细模型在4核下加速比为3.75,8核下加速比为6.26。因此,本文的并行程序具有较好的并行效率和可扩展性。
Based on the OpenMP technique, a parallel 3D explicit material point method (MPM) code, MPM3DMP, is developed in this paper. The domain decomposition method is presented for avoiding ta races in updat each thread deal ng wi nodal variables. The background grid is decomposed into some uniform patches, da- and a patch in domain decomposition method. After updating nodes in all patches, their nodal variables are assembled into the global one. The code for updating particle variables can he parallelized using the loop splitting method directly. To test the performance of the developed code, the Taylor bar impact is simulated by using three models with different number of particles on a computer with dual quad-core Intel Woodcrest processors. A speedup of 3.82 is achieved for the coarse model in 4 cores, and 6.23 in 8 cores, while a speedup of 3.79 is achieved for the medium-sized model in 4 cores, and 6.23 in 8 cores. A speedup of 3.75 is achieved for the fine model in 4 cores, and 6.26 in 8 cores. Thus, MPM3DMP has good parallel efficiency and extension ability.