Execution of Compound Multi-Kernel OpenCL Computations in Multi-CPU/Multi-GPU Environments
NOVA Laboratory for Computer Science and Informatics & Departamento de Informatica, Faculdade de Ciencias e Tecnologia, Universidade Nova de Lisboa, 2829-516 Caparica, Portugal
arXiv:1510.06585 [cs.DC], (22 Oct 2015)
DOI:10.1002/cpe.3612
@article{soldado2015execution,
title={Execution of Compound Multi-Kernel OpenCL Computations in Multi-CPU/Multi-GPU Environments},
author={Soldado, Fabio and Alexandre, Fernando and Paulino, Herve},
year={2015},
month={oct},
archivePrefix={"arXiv"},
primaryClass={cs.DC},
doi={10.1002/cpe.3612}
}
Current computational systems are heterogeneous by nature, featuring a combination of CPUs and GPUs. As the latter are becoming an established platform for high-performance computing, the focus is shifting towards the seamless programming of these hybrid systems as a whole. The distinct nature of the architectural and execution models in place raises several challenges, as the best hardware configuration is behaviour and workload dependent. In this paper, we address the execution of compound, multi-kernel, OpenCL computations in multi-CPU/multi-GPU environments. We address how these computations may be efficiently scheduled onto the target hardware, and how the system may adapt itself to changes in the workload to process and to fluctuations in the CPU’s load. An experimental evaluation attests the performance gains obtained by the conjoined use of the CPU and GPU devices, when compared to GPU-only executions, and also by the use of data-locality optimizations in CPU environments.
October 25, 2015 by hgpu