Implementing Particle Based Numerical Methods on Multi-Core. Holmes, D., Williams, J., Tilke, P, & Leonardi, C. Journal of Computational Physics, 0. abstract bibtex This paper discusses the implementation of meshless and particle based numerical methods for parallel computing architectures based on multi-core. General strategies are developed for spatial management and thread coordination that optimally suit the performance characteristics of such hardware configurations. Hashing cell techniques have been used widely in particle based numerical methods to achieve algorithmically efficient interaction tracking. In this paper, we extend such a technique so that hashed cells double as fine grained spatial domains that align to parallel execution tasks. Such an approach is easily implemented on shared memory platforms like multi-core and has been found to have optimal load balancing, cache and task coordination characteristics. Additionally, the way in which tasks are mapped to execution threads has a significant influence on the memory footprint of an application and it is shown that memory efficiency is one of, if not the, most important factor in achieving execution speed and performance on multi-core. The H-Dispatch algorithm developed in a previous work (Holmes et al, Comput. Phys. Commun. 2010; 181: 341-354) is used to distribute tasks to processing cores. The performance of the developed numerical strategies are demonstrated in speed-up and efficiency tests on a smooth particle hydrodynamics (SPH) fluid flow simulator. Results for efficiency of upwards of 90% are achieved on a 24-core machine.
@article{Holmes_Implementing,
author={Holmes, {D.W.} and Williams, {J.R.} and Tilke, P and Leonardi, {C.R.}},
title={Implementing Particle Based Numerical Methods on {Multi-Core}},
abstract={This paper discusses the implementation of meshless and particle based numerical methods for parallel computing architectures based on multi-core. General strategies are developed for spatial management and thread coordination that optimally suit the performance characteristics of such hardware configurations. Hashing cell techniques have been used widely in particle based numerical methods to achieve algorithmically efficient interaction tracking. In this paper, we extend such a technique so that hashed cells double as fine grained spatial domains that align to parallel execution tasks. Such an approach is easily implemented on shared memory platforms like multi-core and has been found to have optimal load balancing, cache and task coordination characteristics. Additionally, the way in which tasks are mapped to execution threads has a significant influence on the memory footprint of an application and it is shown that memory efficiency is one of, if not the, most important factor in achieving execution speed and performance on multi-core. The {H-Dispatch} algorithm developed in a previous work {(Holmes} et al, Comput. Phys. Commun. 2010; 181: 341-354) is used to distribute tasks to processing cores. The performance of the developed numerical strategies are demonstrated in speed-up and efficiency tests on a smooth particle hydrodynamics {(SPH)} fluid flow simulator. Results for efficiency of upwards of 90\% are achieved on a 24-core machine.},
journal={Journal of Computational Physics},
year={0},
keywords={02
05
07
20
60
70
89
cb
ff
h-dispatch
hydrodynamics
multi-core
ns
pacs
particle based numerical method
partition of unity
smooth particle
spacial hashing
thread safety
tp}
}
Downloads: 0
{"_id":"8AFvQBGaRPwRYxBbZ","bibbaseid":"holmes-williams-tilke-leonardi-implementingparticlebasednumericalmethodsonmulticore-0","downloads":0,"creationDate":"2017-05-11T15:36:27.989Z","title":"Implementing Particle Based Numerical Methods on Multi-Core","author_short":["Holmes, D.","Williams, J.","Tilke, P","Leonardi, C."],"year":0,"bibtype":"article","biburl":"http://tilke.github.io/bib/tilke.bib","bibdata":{"bibtype":"article","type":"article","author":[{"propositions":[],"lastnames":["Holmes"],"firstnames":["D.W."],"suffixes":[]},{"propositions":[],"lastnames":["Williams"],"firstnames":["J.R."],"suffixes":[]},{"propositions":[],"lastnames":["Tilke"],"firstnames":["P"],"suffixes":[]},{"propositions":[],"lastnames":["Leonardi"],"firstnames":["C.R."],"suffixes":[]}],"title":"Implementing Particle Based Numerical Methods on Multi-Core","abstract":"This paper discusses the implementation of meshless and particle based numerical methods for parallel computing architectures based on multi-core. General strategies are developed for spatial management and thread coordination that optimally suit the performance characteristics of such hardware configurations. Hashing cell techniques have been used widely in particle based numerical methods to achieve algorithmically efficient interaction tracking. In this paper, we extend such a technique so that hashed cells double as fine grained spatial domains that align to parallel execution tasks. Such an approach is easily implemented on shared memory platforms like multi-core and has been found to have optimal load balancing, cache and task coordination characteristics. Additionally, the way in which tasks are mapped to execution threads has a significant influence on the memory footprint of an application and it is shown that memory efficiency is one of, if not the, most important factor in achieving execution speed and performance on multi-core. The H-Dispatch algorithm developed in a previous work (Holmes et al, Comput. Phys. Commun. 2010; 181: 341-354) is used to distribute tasks to processing cores. The performance of the developed numerical strategies are demonstrated in speed-up and efficiency tests on a smooth particle hydrodynamics (SPH) fluid flow simulator. Results for efficiency of upwards of 90% are achieved on a 24-core machine.","journal":"Journal of Computational Physics","year":"0","keywords":"02 05 07 20 60 70 89 cb ff h-dispatch hydrodynamics multi-core ns pacs particle based numerical method partition of unity smooth particle spacial hashing thread safety tp","bibtex":"@article{Holmes_Implementing,\n author={Holmes, {D.W.} and Williams, {J.R.} and Tilke, P and Leonardi, {C.R.}},\n title={Implementing Particle Based Numerical Methods on {Multi-Core}},\n abstract={This paper discusses the implementation of meshless and particle based numerical methods for parallel computing architectures based on multi-core. General strategies are developed for spatial management and thread coordination that optimally suit the performance characteristics of such hardware configurations. Hashing cell techniques have been used widely in particle based numerical methods to achieve algorithmically efficient interaction tracking. In this paper, we extend such a technique so that hashed cells double as fine grained spatial domains that align to parallel execution tasks. Such an approach is easily implemented on shared memory platforms like multi-core and has been found to have optimal load balancing, cache and task coordination characteristics. Additionally, the way in which tasks are mapped to execution threads has a significant influence on the memory footprint of an application and it is shown that memory efficiency is one of, if not the, most important factor in achieving execution speed and performance on multi-core. The {H-Dispatch} algorithm developed in a previous work {(Holmes} et al, Comput. Phys. Commun. 2010; 181: 341-354) is used to distribute tasks to processing cores. The performance of the developed numerical strategies are demonstrated in speed-up and efficiency tests on a smooth particle hydrodynamics {(SPH)} fluid flow simulator. Results for efficiency of upwards of 90\\% are achieved on a 24-core machine.},\n journal={Journal of Computational Physics},\n year={0},\n keywords={02\n05\n07\n20\n60\n70\n89\ncb\nff\nh-dispatch\nhydrodynamics\nmulti-core\nns\npacs\nparticle based numerical method\npartition of unity\nsmooth particle\nspacial hashing\nthread safety\ntp}\n}\n","author_short":["Holmes, D.","Williams, J.","Tilke, P","Leonardi, C."],"key":"Holmes_Implementing","id":"Holmes_Implementing","bibbaseid":"holmes-williams-tilke-leonardi-implementingparticlebasednumericalmethodsonmulticore-0","role":"author","urls":{},"keyword":["02 05 07 20 60 70 89 cb ff h-dispatch hydrodynamics multi-core ns pacs particle based numerical method partition of unity smooth particle spacial hashing thread safety tp"],"downloads":0,"html":""},"search_terms":["implementing","particle","based","numerical","methods","multi","core","holmes","williams","tilke","leonardi"],"keywords":["02 05 07 20 60 70 89 cb ff h-dispatch hydrodynamics multi-core ns pacs particle based numerical method partition of unity smooth particle spacial hashing thread safety tp"],"authorIDs":[],"dataSources":["ebnyNNw5PqprD6B9v"]}