Cost-effective medical image reconstruction: from clusters to graphics processing units
Proceedings of the 5th conference on Computing frontiers
Using OpenMP: Portable Shared Memory Parallel Programming (Scientific and Engineering Computation)
Using OpenMP: Portable Shared Memory Parallel Programming (Scientific and Engineering Computation)
Communication Optimization for Medical Image Reconstruction Algorithms
Proceedings of the 15th European PVM/MPI Users' Group Meeting on Recent Advances in Parallel Virtual Machine and Message Passing Interface
Intel threading building blocks
Intel threading building blocks
Lessons from implementing the biCGStab method with SkeTo library
Proceedings of the fourth international workshop on High-level parallel programming and applications
Frameworks for multi-core architectures: a comprehensive evaluation using 2D/3D image registration
ARCS'11 Proceedings of the 24th international conference on Architecture of computing systems
PaCT'11 Proceedings of the 11th international conference on Parallel computing technologies
All-pairs computations on many-core graphics processors
Parallel Computing
Hi-index | 0.00 |
We compare two parallel programming approaches for multi-core systems: the well-known OpenMP and the recently introduced Threading Building Blocks (TBB) library by Intel®. The comparison is made using the parallelization of a real-world numerical algorithm for medical imaging. We develop several parallel implementations, and compare them w.r.t. programming effort, programming style and abstraction, and runtime performance. We show that TBB requires a considerable program re-design, whereas with OpenMP simple compiler directives are sufficient. While TBB appears to be less appropriate for parallelizing existing implementations, it fosters a good programming style and higher abstraction level for newly developed parallel programs. Our experimental measurements on a dual quad-core system demonstrate that OpenMP slightly outperforms TBB in our implementation.