Sciweavers

CPHYSICS
2010

An events based algorithm for distributing concurrent tasks on multi-core architectures

14 years 23 days ago
An events based algorithm for distributing concurrent tasks on multi-core architectures
In this paper, a programming model is presented which enables scalable parallel performance on multi-core shared memory architectures. The model has been developed for application to a wide range of numerical simulation problems. Such problems involve time stepping or iteration algorithms where synchronization of multiple threads of execution is required. It is shown that traditional approaches to parallelism including message passing and scatter-gather can be improved upon in terms of speed-up and memory management. Using spatial decomposition to create orthogonal computational tasks, a new task management algorithm called H-Dispatch is developed. This algorithm makes efficient use of memory resources by limiting the need for garbage collection and takes optimal advantage of multiple cores by employing a "hungry" pull strategy. The technique is demonstrated on a simple finite difference solver and results are compared to traditional MPI and scatter-gather approaches. The H-...
David W. Holmes, John R. Williams, Peter Tilke
Added 09 Dec 2010
Updated 09 Dec 2010
Type Journal
Year 2010
Where CPHYSICS
Authors David W. Holmes, John R. Williams, Peter Tilke
Comments (0)