Parallel-vector algorithms for particle simulations on shared-memory multiprocessors

被引:51
作者
Nishiura, Daisuke [1 ]
Sakaguchi, Hide [1 ]
机构
[1] Japan Agcy Marine Earth Sci & Technol, Inst Res Earth Evolut, Kanagawa 2360001, Japan
关键词
Discrete element method; GPO computing; Vectorization; Parallelization; High performance computing; MOLECULAR-DYNAMICS SIMULATIONS; DISCRETE; DEM; SYSTEMS; MODEL; FLOW; SPH;
D O I
10.1016/j.jcp.2010.11.040
中图分类号
TP39 [计算机的应用];
学科分类号
081203 ; 0835 ;
摘要
Over the last few decades, the computational demands of massive particle-based simulations for both scientific and industrial purposes have been continuously increasing. Hence, considerable efforts are being made to develop parallel computing techniques on various platforms. In such simulations, particles freely move within a given space, and so on a distributed-memory system, load balancing, i.e., assigning an equal number of particles to each processor, is not guaranteed. However, shared-memory systems achieve better load balancing for particle models, but suffer from the intrinsic drawback of memory access competition, particularly during (1) paring of contact candidates from among neighboring particles and (2) force summation for each particle. Here, novel algorithms are proposed to overcome these two problems. For the first problem, the key is a pre-conditioning process during which particle labels are sorted by a cell label in the domain to which the particles belong. Then, a list of contact candidates is constructed by pairing the sorted particle labels. For the latter problem, a table comprising the list indexes of the contact candidate pairs is created and used to sum the contact forces acting on each particle for all contacts according to Newton's third law. With just these methods, memory access competition is avoided without additional redundant procedures. The parallel efficiency and compatibility of these two algorithms were evaluated in discrete element method (DEM) simulations on four types of shared-memory parallel computers: a multicore multiprocessor computer, scalar supercomputer, vector supercomputer, and graphics processing unit. The computational efficiency of a DEM code was found to be drastically improved with our algorithms on all but the scalar supercomputer. Thus, the developed parallel algorithms are useful on shared-memory parallel computers with sufficient memory bandwidth. (C) 2010 Elsevier Inc. All rights reserved.
引用
收藏
页码:1923 / 1938
页数:16
相关论文
共 35 条
[1]  
*AMD INC, 2008, FUT IS FUS IND CHANG
[2]   General purpose molecular dynamics simulations fully implemented on graphics processing units [J].
Anderson, Joshua A. ;
Lorenz, Chris D. ;
Travesset, A. .
JOURNAL OF COMPUTATIONAL PHYSICS, 2008, 227 (10) :5342-5359
[3]   APPLICATIONS OF SMOOTH PARTICLE HYDRODYNAMICS (SPH) TO ASTROPHYSICAL PROBLEMS [J].
BENZ, W .
COMPUTER PHYSICS COMMUNICATIONS, 1988, 48 (01) :97-105
[4]   An experimental analysis of parallel sorting algorithms [J].
Blelloch, GE ;
Leiserson, CE ;
Maggs, BM ;
Plaxton, CG ;
Smith, SJ ;
Zagha, M .
THEORY OF COMPUTING SYSTEMS, 1998, 31 (02) :135-167
[5]   On the number of particles in N-body simulations of planet-disk interaction [J].
Brunini, Adrian ;
Santamaria, Pablo J. ;
Viturro, Hector R. ;
Cionco, Rodolfo G. .
PLANETARY AND SPACE SCIENCE, 2007, 55 (14) :2121-2127
[6]  
Carrillo A. R., 1996, P 1996 ACM IEEE C SU, P51
[7]   PARALLELIZATION OF DISCRETE ELEMENT SIMULATION [J].
Chang, Wei-Tze ;
Hsieh, Shang-Hsien .
JOURNAL OF THE CHINESE INSTITUTE OF ENGINEERS, 2009, 32 (06) :825-841
[8]   Industrial particle flow modelling using discrete element method [J].
Cleary, Paul W. .
ENGINEERING COMPUTATIONS, 2009, 26 (06) :698-743
[9]   DISCRETE NUMERICAL-MODEL FOR GRANULAR ASSEMBLIES [J].
CUNDALL, PA ;
STRACK, ODL .
GEOTECHNIQUE, 1979, 29 (01) :47-65
[10]   Parallel processing for a discrete element program [J].
Dowding, CH ;
Dmytryshyn, O ;
Belytschko, TB .
COMPUTERS AND GEOTECHNICS, 1999, 25 (04) :281-285