12436

Writing self-adaptive codes for heterogeneous systems

Jorge F. Fabeiro, Diego Andrade, Basilio B. Fraguela, Ramon Doallo
Depto. de Electronica e Sistemas, Universidade da Coruna, Spain
Euro-Par 2014 Parallel Processing 20th International Conference (Euro-Par’14), 2014

@article{fabeiro2014writing,

   title={Writing self-adaptive codes for heterogeneous systems},

   author={Fabeiro, Jorge F and Andrade, Diego and Fraguela, Basilio B and Doallo, Ram{‘o}n},

   year={2014}

}

Heterogeneous systems are becoming increasingly common. Relatedly, the popularity of OpenCL is growing, as it provides a unified mean to program a wide variety of devices including GPUs or multicore CPUs. More recently, the Heterogeneous Programming Library (HPL) targets the same variety of systems as OpenCL, intending to improve their programmability. The main drawback of such unified approaches is the lack of performance portability, as codes written using OpenCL or HPL may obtain a good performance in a given device but a poor performance in a different one. HPL allows to generate different versions of kernels at run-time by combining C++ and the HPL embedded language. This paper explores the development of self-adaptive kernels that exploit this characteristic so that their code depends on configuration parameters that are tuned using a genetic algorithm through an iterative optimization process. The results show that these self-adaptive kernels are faster than those generated by hand following heuristics.
VN:F [1.9.22_1171]
Rating: 4.3/5 (110 votes cast)
Writing self-adaptive codes for heterogeneous systems, 4.3 out of 5 based on 110 ratings

Recent source codes

* * *

* * *

HGPU group © 2010-2017 hgpu.org

All rights belong to the respective authors

Contact us: