A Comprehensive Performance Comparison of CUDA and OpenCL
Parallel and Distributed Systems Group, Delft University of Technology, Delft, the Netherlands
The 40-th International Conference on Parallel Processing, ICPP’11, 2011
@inproceedings{fang2011comprehensive,
title={A Comprehensive Performance Comparison of CUDA and OpenCL$}$},
author={Fang, J. and Varbanescu, A.L. and Sips, H.},
booktitle={The 40-th International Conference on Parallel Processing (ICPP’11), Taipei, Taiwan$}$},
year={2011}
}
This paper presents a comprehensive performance comparison between CUDA and OpenCL. We have selected 16 benchmarks ranging from synthetic applications to real-world ones. We make an extensive analysis of the performance gaps taking into account programming models, optimization strategies, architectural details, and underlying compilers. Our results show that, for most applications, CUDA performs at most 30% better than OpenCL. We also show that this difference is due to unfair comparisons: in fact, OpenCL can achieve similar performance to CUDA under a fair comparison. Therefore, we define a fair comparison of the two types of applications, providing guidelines for more potential analyses. We also investigate OpenCL’s portability by running the benchmarks on other prevailing platforms with minor modifications. Overall, we conclude that OpenCL’s portability does not fundamentally affect its performance, and OpenCL can be a good alternative to CUDA.
October 1, 2011 by hgpu