A framework for parallel computational physics algorithms on multi-core: SPH in parallel
Holmes, David W., Williams, John R., and Tilke, Peter (2011) A framework for parallel computational physics algorithms on multi-core: SPH in parallel. Advances in Engineering Software, 42 (11). pp. 999-1008.
|PDF (Published Version) - Repository staff only - Requires a PDF viewer such as GSview, Xpdf or Adobe Acrobat Reader|
View at Publisher Website: http://dx.doi.org/10.1016/j.advengsoft.2...
In this paper, a simulation framework that enables distributed numerical computing in multi-core shared-memory environments is presented. Using multiple threads allows a single memory image to be shared concurrently across cores but potentially introduces race conditions. Race conditions can be avoided by ensuring each core operates on an isolated memory block. This is usually achieved by running a different operating system process on each core, such as multiple MPI processes. However, we show that in many computational physics problems, memory isolation can also be enforced within a single process by leveraging spatial sub-division of the physical domain. A new spatial sub-division algorithm is presented that ensures threads operate on different memory blocks, allowing for in-place updates of state, with no message passing or creation of local variables during time stepping. Additionally, the developed framework controls task distribution dynamically ensuring an events based load balance. Results from fluid mechanics analysis using Smoothed Particle Hydrodynamics (SPH) are presented demonstrating linear performance with number of cores.
|Item Type:||Article (Refereed Research - C1)|
|Keywords:||parallel simulation framework, multi-core, domain distribution, port based programming, smoothed particle hydrodynamics, concurrency and coordination runtime|
|FoR Codes:||08 INFORMATION AND COMPUTING SCIENCES > 0805 Distributed Computing > 080599 Distributed Computing not elsewhere classified @ 60%|
09 ENGINEERING > 0915 Interdisciplinary Engineering > 091501 Computational Fluid Dynamics @ 25%
01 MATHEMATICAL SCIENCES > 0103 Numerical and Computational Mathematics > 010301 Numerical Analysis @ 15%
|SEO Codes:||97 EXPANDING KNOWLEDGE > 970109 Expanding Knowledge in Engineering @ 100%|
|Deposited On:||18 Aug 2011 14:18|
|Last Modified:||18 May 2013 01:32|
Last 12 Months: 1
|Citation Counts with External Providers:||Web of Science: 0|
Repository Staff Only: item control page