GPU 1,a) 1,b) 1,c) 1,d) GPU 1 GPU Structure Of Array Array Of Structure 1. MPS(Moving Particle Semi-Implicit) [1] SPH(Smoothed Particle Hydrodynamics) [] DEM(Distinct Element Method)[] [] 1 Tokyo Institute of Technology, Meguro, Tokyo 1-8, Japan a) watanabe@sim.gsic.titech.ac.jp b) taoki@gsic.titech.ac.jp c) tsuzuki@sim.gsic.titech.ac.jp d) shimokawabe@sim.gsic.titech.ac.jp CPU 1core GPU(Graphics Processing Unit) [] [6] [7] [8] GPU [9] [1] GPU SPH DEM GPU 1 GPU GPU DEM GPU [11] [1] Array Of Structure Structure Of c 1 Information Processing Society of Japan 1
Array TSUBAME. Spring GPU NVIDIA Tesla KX CUDA Version 6. Dashpot Spring Friction slider. DEM(Distinct Element Method) Dashpot DEM 1 i j F N ij FT ij F N ij = k N L N ij + c N LN ij t (1) F T ij = k T L T ij + c T LT ij () t L L t k c N T R i i M ij M ij = R i x j x i (x j x i ) F T ij () i j i m i d x i dt I i d θ i dt = i j = i j [F ij ] + m i g () [M ij ] () x i θ i i m i I i Normal Direction Tangential Direction 1 Fig. 1 DEM interaction model. Fig. Collisions among contacting particles...1 DEM N N-1 N DEM DEM c 1 Information Processing Society of Japan
1 1 8 7 9 11 6 1 1 8 7 9 11 6 1 1 cell cell 1 cell cell -1 1-1 1-1 -1 Fig. Neighboring cell list. Fig. Neighboring cell list using linked-list method. 8 8... 1 1 GPU CUDA atomic atomicexch hash 1 index 1 sort hash 1 1 index 1 1 start -1 Fig. Neighboring cell list using hash method.. hash index GPU Thrust sort by key start 1. 6 i rc Rc Rc Rc Rc = rc + αd min (6) D min α c 1 Information Processing Society of Japan
Rc 1 rc 8 7 11 1 6 9 6 Fig. 6 Book-keeping method. 1 6 rc xbook xbook+ = v max t (7) xbook (Rc rc)/ xbook. 7 Rc 7 7 Fig. 7 Combination method of Neighboring cell list with bookkeeping method. 6. GPU Array Of Structure(AOS) Structure Of Array(SOA) AOS SOA DEM 1 AOS SOA 8 SOA AOS 91% 6% 1% 7% AOS SOA SOA AOS 7 SOA c 1 Information Processing Society of Japan
Time [sec] 1 Table 1 Physical condition. Number of particle, Size of calculating area. 1.. [m ] Particle diameter Particle mass Spring constant (Normal) Spring constant (Tangential) Damping coefficient (Normal) Damping coefficient (Tangential) 1. 1 [m]. [kg]. 1 [N/m]. 1 [N/m]. 1 1 [Ns/m]. [Ns/m] Coefficient of friction. Discrete time 8 7 6 1 Fig. 8 8 AOS hash + book-keeping AOS linked-list + book-keeping SOA hash + book-keeping interaction book-keeping update 1. 1 [sec] SOA linked-list + book-keeping Comparison between Array of Structure and Structure of Array. 9 Fig. 9 Initial condition of braking dam problem for paformance test. Table Physical condition. Number of particle 1,, Size of calculating area... [m ] Particle diameter 1. 1 [m] Particle mass 1. 1 [kg] Spring constant (Normal). 1 [N/m] Spring constant (Tangential) 1.6 1 [N/m] Damping coefficient (Normal). [Ns/m] Damping coefficient (Tangential). [Ns/m] Coefficient of friction. Discrete time. 1 6 [sec] 7. 7.1 DEM 1 9 9 6, 9,. sec 1.89 sec 1.7 1.%.% 7. 7. c 1 Information Processing Society of Japan
Time [sec] Table Calculation time of linked-list method and hash method. interaction linked-list hash update total linked-list 19.1. 19. 197.7 hash 1998.1 1.89 18.77 8.9 unit : sec α α (6) α.. 1 α α N α =. 9. sec 1% 1 7. α α =. 1 1 1 Fig. 1.. 1 1. Parameter α interaction book-keeping How frequency of update affects calculation time in book-keeping method. α =. 11 1 α α 1 α =.1 α.1 α.1 α.1 7% c 1 Information Processing Society of Japan 6
Time [sec] Table Calculation time of book-keeping + linked-list method and book-keeping + hash method. interaction book-keeping linked-list hash update total book-keeping + linked-list 6.8 6.97 1. 18.9 61. book-keeping + hash. 81..8 19. 68.9 unit : sec 11 8 7 6 1 Fig. 11..1... Parameter α interaction book-keeping How frequency of update affects calculation time in book-keeping + hash method. 1% 77%7. 18.6 sec 8. DEM α α = 1. α =.1 1 1 1 1 1 1.1 18 18 18 66% 1. MB 1.6 11.1 MB. 876. MB Tesla KX 6 GB 1 1 DEM Tesla KX DEM SPH MPS DEM c 1 Information Processing Society of Japan 7
Table Size of memory usage in each neighboring list method. particle book-keeping linked-list hash book-keeping 7.. lnked-list 7. 8. hash 7. 6. book-keeping + linked-list 7. 6. 68. book-keeping + hash 7. 6. 8.1 unit : MB 1 DEM Fig. 1 Breaking dam simulation using million particles. SPH MPS DEM 1 DEM SPH MPS 9. DEM GPU SOA AOS 1 DEM N GPU 1.6. GPU 6 HPC CREST [1] S Koshizuka and Y Oka. Moving-particle semi-implicit method for fragmentation of incompressible fluid. Nuclear science and engineering, Vol. 1, No., pp. 1, 1996. [] Joseph J Monaghan. An introduction to SPH. Computer physics communications, Vol. 8, No. 1, pp. 89 96, 1988. [] Peter A Cundall and Otto DL Strack. A discrete numerical model for granular assemblies. Geotechnique, Vol. 9, No. 1, pp. 7 6, 1979. [],,. GPU., Vol. 76, No. 7, pp. 6 67, 1. [] Nicolin Govender, Daniel N Wilke, Schalk Kok, and Rosanne Els. Development of a convex polyhedral discrete element simulation framework for NVIDIA Kepler based GPUs. Journal of Computational and Applied Mathematics, Vol. 7, pp. 86, 1. [6],. GPU DEM., Vol. 1, No. 17, 1. [7] Takahiro Harada, Seiichi Koshizuka, and Yoichiro Kawaguchi. Smoothed particle hydrodynamics on GPUs. In Computer Graphics International, pp. 6 7. SBC Petropolis, 7. [8],,. GPU 1.., Vol. 6, No., pp. 8 9, sep 1. [9] José M Domínguez, Alejandro JC Crespo, Daniel Valdez- Balderas, Benedict D Rogers, and Moncho Gómezc 1 Information Processing Society of Japan 8
Gesteira. New multi-gpu implementation for smoothed particle hydrodynamics on heterogeneous clusters. Computer Physics Communications, Vol. 18, No. 8, pp. 188 186, 1. [1],. GPU. Proceedings of the Conference on Computational Engineering and Science, 19, p.., 1. [11],.., Vol. 1, No. 11, 1. [1] Simon Green. Particle simulation using cuda. NVIDIA Whitepaper, December 1, 1. c 1 Information Processing Society of Japan 9