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: PDFPersö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.