JOURNAL ARTICLE

Improving Performance of GPU Specific OpenCL Program on CPUs

Abstract

OpenCL provides unified programming interface for various parallel computing platforms. The OpenCL framework manifests good functional portability, the programs can be run on platforms supporting OpenCL programming without any modification. However, most of the OpenCL programs are optimized for massively parallel processors, such as GPU, it's hard to achieve good performance on general multi-core processors without sophisticate modification to the GPU specific OpenCL programs. The major reason is the immense gap between CPU and GPU architecture. In this paper, we evaluate the performance portability of OpenCL programs between CPU and GPU, and analyse the reasons why GPU specific OpenCL programs are not fit for CPU. Based on the profiling, we proposed three optimization strategies for improving performance of GPU specific OpenCL programs on CPU, including increasing the granularity of task partition, optimizing the usage of memory hierarchy and block-based data accessing. In addition, we applied the proposed techniques on several benchmarks. The experimental results show that the performance of the optimized OpenCL programs achieve high performance in terms of speedup ratio from 2 to 4 on CPUs, when compared with their corresponding GPU specific ones.

Keywords:
Computer science Software portability Parallel computing Speedup General-purpose computing on graphics processing units CUDA Memory hierarchy Granularity Central processing unit Partition (number theory) Programming paradigm Operating system Cache Graphics Programming language

Metrics

9
Cited By
1.08
FWCI (Field Weighted Citation Impact)
7
Refs
0.77
Citation Normalized Percentile
Is in top 1%
Is in top 10%

Citation History

Topics

Parallel Computing and Optimization Techniques
Physical Sciences →  Computer Science →  Hardware and Architecture
Distributed and Parallel Computing Systems
Physical Sciences →  Computer Science →  Computer Networks and Communications
Advanced Data Storage Technologies
Physical Sciences →  Computer Science →  Computer Networks and Communications

Related Documents

© 2026 ScienceGate Book Chapters — All rights reserved.