Premium
Comparing programming models for medical imaging on multi‐core systems
Author(s) -
Kegel Philipp,
Schellmann Maraike,
Gorlatch Sergei
Publication year - 2011
Publication title -
concurrency and computation: practice and experience
Language(s) - English
Resource type - Journals
SCImago Journal Rank - 0.309
H-Index - 67
eISSN - 1532-0634
pISSN - 1532-0626
DOI - 10.1002/cpe.1671
Subject(s) - posix threads , computer science , posix , parallelism (grammar) , programming style , abstraction , threading (protein sequence) , core (optical fiber) , programming paradigm , parallel computing , programming language , thread (computing) , telecommunications , philosophy , physics , epistemology , nuclear magnetic resonance , protein structure
Multi‐core processors offer a huge potential of parallelism but pose a challenge of program development for achieving high performance in real applications. We compare three popular parallel programming models—POSIX threads (Pthreads), OpenMP, and Threading Building Blocks (TBB)—regarding their use for multi‐core systems. We analyze how these models can be employed for implementing various parallelizations of a real‐world application from the area of medical imaging, and we conduct extensive runtime experiments to measure performance. Our main contribution is a comprehensive comparison of Pthreads, OpenMP, and TBB with respect to the following criteria: program development effort, programming style, level of abstraction, and runtime performance on multi‐cores. Copyright © 2010 John Wiley & Sons, Ltd.