Title :
Deterministic scale-free pipeline parallelism with hyperqueues
Author :
Vandierendonck, Hans ; Chronaki, Kallia ; Nikolopoulos, Dimitrios S.
Author_Institution :
Queen´s Univ. Belfast, Belfast, UK
Abstract :
Ubiquitous parallel computing aims to make parallel programming accessible to a wide variety of programming areas using deterministic and scale-free programming models built on a task abstraction. However, it remains hard to reconcile these attributes with pipeline parallelism, where the number of pipeline stages is typically hard-coded in the program and defines the degree of parallelism. This paper introduces hyperqueues, a programming abstraction that enables the construction of deterministic and scale-free pipeline parallel programs. Hyperqueues extend the concept of Cilk++ hyperobjects to provide thread-local views on a shared data structure. While hyperobjects are organized around private local views, hyperqueues require shared concurrent views on the underlying data structure. We define the semantics of hyperqueues and describe their implementation in a work-stealing scheduler. We demonstrate scalable performance on pipeline-parallel PARSEC benchmarks and find that hyperqueues provide comparable or up to 30% better performance than POSIX threads and Intel´s Threading Building Blocks. The latter are highly tuned to the number of available processing cores, while programs using hyperqueues are scale-free.
Keywords :
Unix; data structures; deterministic algorithms; multi-threading; parallel programming; pipeline processing; program diagnostics; queueing theory; ubiquitous computing; Cilk++ hyperobjects; Intel Threading Building Blocks; POSIX threads; data structure; deterministic models; deterministic scale-free pipeline parallelism; hyperqueues; parallel programming; pipeline-parallel PARSEC benchmarks; private local views; programming abstraction; scale-free pipeline parallel programs; scale-free programming models; shared data structure; task abstraction; thread-local views; ubiquitous parallel computing; work-stealing scheduler; Computational modeling; Data structures; Parallel processing; Pipelines; Programming; Runtime; Synchronization;
Conference_Titel :
High Performance Computing, Networking, Storage and Analysis (SC), 2013 International Conference for
Conference_Location :
Denver, CO
Print_ISBN :
978-1-4503-2378-9
DOI :
10.1145/2503210.2503233