Improving OpenCL Programmability with the Heterogeneous Programming Library

Moises Vinas, Basilio B. Fraguela, Zeki Bozkus, Diego Andrade
Universidade da Coruna, A Coruna, Spain
Procedia Computer Science, Volume 51, Pages 110-119, 2015


   title={Improving OpenCL Programmability with the Heterogeneous Programming Library},

   author={Vi{~n}as, Moi{‘s}es and Fraguela, Basilio B and Bozkus, Zeki and Andrade, Diego},

   journal={Procedia Computer Science},






The use of heterogeneous devices is becoming increasingly widespread. Their main drawback is their low programmability due to the large amount of details that must be handled. Another important problem is the reduced code portability, as most of the tools to program them are vendor or device-specific. The exception to this observation is OpenCL, which largely suffers from the reduced programmability problem mentioned, particularly in the host side. The Heterogeneous Programming Library (HPL) is a recent proposal to improve this situation, as it couples portability with good programmability. While the HPL kernels must be written in a language embedded in C++, users may prefer to use OpenCL kernels for several reasons such as their growing availability or a faster development from existing codes. In this paper we extend HPL to support the execution of native OpenCL kernels and we evaluate the resulting solution in terms of performance and programmability, achieving very good results.
No votes yet.
Please wait...

* * *

* * *

HGPU group © 2010-2021 hgpu.org

All rights belong to the respective authors

Contact us: