Comparing programming models for medical imaging on multi-core systems
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 (C) 2010 John Wiley & Sons, Ltd.
medical imaging pthreads openmp threading building blocks osem