@inproceedings{317be833d6d3453e909647abf8c01d4c,
title = "Programming heterogeneous multicore systems using threading building blocks",
abstract = "Intel{\textquoteright}s Threading Building Blocks (TBB) provide a high-level abstraction for expressing parallelism in applications without writing explicitly multi-threaded code. However, TBB is only available for shared-memory, homogeneous multicore processors. Codeplay{\textquoteright}s Offload C++ provides a single-source, POSIX threads-like approach to programming heterogeneous multicore devices where cores are equipped with private, local memories—code to move data be- tween memory spaces is generated automatically. In this paper, we show that the strengths of TBB and Offload C++ can be combined, by implementing part of the TBB headers in Offload C++. This allows applications parallelised using TBB to run, without source-level modifications, across all the cores of the Cell BE processor. We present experimental results applying our method to a set of TBB programs. To our knowledge, this work marks the first demonstration of programs parallelised using TBB executing on a heterogeneous multicore architecture.",
keywords = "multicore, Cell, parallel, Threading Building Blocks, C++, heterogeneous",
author = "George Russell and Paul Keir and Alastair Donaldson and Uwe Dolinsky and Andrew Richards and Colin Riley",
year = "2011",
doi = "10.1007/978-3-642-21878-1_15",
language = "English",
isbn = "9783642218774",
volume = "6586",
series = "Lecture Notes in Computer Science",
publisher = "Springer Berlin Heidelberg",
pages = "117--125",
editor = "Guarracino, {Mario R. } and Vivien, {Fr{\'e}d{\'e}ric } and Tr{\"a}ff, {Jesper Larsson } and Cannatoro, {Mario } and Danelutto, {Marco } and Hast, {Anders } and Perla, {Francesca } and Kn{\"u}pfer, {Andreas } and {Di Martino}, {Beniamino } and Michael Alexander",
booktitle = "Euro-Par 2010",
address = "Germany",
}