An Investigation of the Performance Portability of OpenCL
Performance Computing and Visualisation, Department of Computer Science, University of Warwick, CV4 7AL, UK
University of Warwick, 2012
@article{pennycook2012investigation,
title={An investigation of the performance portability of OpenCL},
author={Pennycook, SJ and Hammond, SD and Wright, SA and Herdman, JA and Miller, I and Jarvis, SA},
journal={Journal of Parallel and Distributed Computing},
year={2012},
publisher={Elsevier}
}
This paper reports on the development of an MPI/OpenCL implementation of LU, an application-level benchmark from the NAS Parallel Benchmark Suite. An account of the design decisions addressed during the development of this code is presented, demonstrating the importance of memory arrangement and work-item/work-group distribution strategies when applications are deployed on different device types. The resulting platform-agnostic, single source application is benchmarked on a number of different architectures, and is shown to be 1.3-1.5x slower than native FORTRAN or CUDA implementations on a single node and 1.3-3.1x slower on multiple nodes. We also explore the potential performance gains of OpenCL’s device fissioning capability, demonstrating up to a 3x speed-up over our original OpenCL implementation.
May 21, 2013 by hgpu