A Case Study on Multi-Core Programming Using Threading Building Blocks

Konferenz: ARCS 2009 - 22th International Conference on Architecture of Computing Systems
11.03.2009 in Delft, The Netherlands

Tagungsband: ARCS 2009

Seiten: 8Sprache: EnglischTyp: PDF

Persönliche VDE-Mitglieder erhalten auf diesen Artikel 10% Rabatt

Kegel, Philipp; Schellmann, Maraike; Gorlatch, Sergei (University of Münster, Germany)

We describe the parallelization of a popular medical imaging algorithm - LM OSEM - using Intel’s Threading Building Blocks (TBB) library. We introduce and compare data- and task-parallel constructs of TBB and show code examples. Three parallel implementations of LM OSEM are created using different parallel constructs of TBB. The implementations are compared regarding runtime performance and scalability behaviour on multi-core systems. Also programming style and abstraction level of the implementations are discussed. We conclude that TBB in general is appropriate for multi-core parallelization, but that its pipeline construct has performance drawbacks.