DocumentCode
1917902
Title
Performance Gaps between OpenMP and OpenCL for Multi-core CPUs
Author
Shen, Jie ; Fang, Jianbin ; Sips, Henk ; Varbanescu, Ana Lucia
Author_Institution
Parallel & Distrib. Syst. Group, Delft Univ. of Technol., Delft, Netherlands
fYear
2012
fDate
10-13 Sept. 2012
Firstpage
116
Lastpage
125
Abstract
OpenCL and OpenMP are the most commonly used programming models for multi-core processors. They are also fundamentally different in their approach to parallelization. In this paper, we focus on comparing the performance of OpenCL and OpenMP. We select three applications from the Rodinia benchmark suite (which provides equivalent OpenMP and OpenCL implementations), and carry out experiments with different datasets on three multi-core platforms. We see that the incorrect usage of the multi-core CPUs, the inherent OpenCL fine-grained parallelism, and the immature OpenCL compilers are the main reasons that lead to the OpenCL poorer performance. After tuning the OpenCL versions to be more CPU-friendly, we show that OpenCL either outperforms or achieves similar performance in more than 80% of the cases. Therefore, we believe that OpenCL is a good alternative for multi-core CPU programming.
Keywords
multiprocessing programs; multiprocessing systems; program compilers; OpenCL compilers; OpenCL fine-grained parallelism; OpenMP; Rodinia benchmark suite; multicore CPU; multicore processors; performance gaps; programming models; Arrays; Hardware; Kernel; Parallel processing; Performance evaluation; Programming; CPU; Multi-core; OpenCL; OpenMP; Performance Comparison;
fLanguage
English
Publisher
ieee
Conference_Titel
Parallel Processing Workshops (ICPPW), 2012 41st International Conference on
Conference_Location
Pittsburgh, PA
ISSN
1530-2016
Print_ISBN
978-1-4673-2509-7
Type
conf
DOI
10.1109/ICPPW.2012.18
Filename
6337470
Link To Document