Load balancing in a heterogeneous world: CPU-Xeon Phi co-execution of data-parallel kernels
Heterogeneous systems composed by a CPU and a set of different hardware accelerators are very compelling thanks to their excellent performance and energy consumption features. One of the most important problems of those systems is the workload distribution among their devices. This paper describes a...
| Autores: | , , , |
|---|---|
| Tipo de recurso: | artículo |
| Fecha de publicación: | 2019 |
| País: | España |
| Institución: | Universidad de Cantabria (UC) |
| Repositorio: | UCrea Repositorio Abierto de la Universidad de Cantabria |
| Idioma: | inglés |
| OAI Identifier: | oai:repositorio.unican.es:10902/35076 |
| Acceso en línea: | https://hdl.handle.net/10902/35076 |
| Access Level: | acceso abierto |
| Palabra clave: | Heterogeneous computing Co-execution CPU-Xeon Phi Load balancing OpenCL Performance portability Energy efficiency |
| Sumario: | Heterogeneous systems composed by a CPU and a set of different hardware accelerators are very compelling thanks to their excellent performance and energy consumption features. One of the most important problems of those systems is the workload distribution among their devices. This paper describes an extension of the Maat library to allow the co-execution of a data-parallel OpenCL kernel on a heterogeneous system composed by a CPU and an Intel Xeon Phi. Maat provides an abstract view of the heterogeneous system as well as set of load balancing algorithms to squeeze the performance out of the node. It automatically performs the data partition and distribution among the devices, generates the kernels and efficiently merges the partial outputs together. Experimental results show that this approach always outperforms the baseline with only a Xeon Phi, giving excellent performance and energy efficiency. Furthermore, it is essential to select the right load balancing algorithm because it has a huge impact in the system performance and energy consumption. |
|---|