@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",
}