Exploiting co-execution with oneAPI: heterogeneity from a modern perspective

Raúl Nozal,Jose Luis Bosque
DOI: https://doi.org/10.48550/arXiv.2106.01726
2021-06-03
Distributed, Parallel, and Cluster Computing
Abstract:Programming efficiently heterogeneous systems is a major challenge, due to the complexity of their architectures. Intel oneAPI, a new and powerful standards-based unified programming model, built on top of SYCL, addresses these issues. In this paper, oneAPI is provided with co-execution strategies to run the same kernel between different devices, enabling the exploitation of static and dynamic policies. On top of that, static and dynamic load-balancing algorithms are integrated and analyzed. This work evaluates the performance and energy efficiency for a well-known set of regular and irregular HPC benchmarks, using an integrated GPU and CPU. Experimental results show that co-execution is worthwhile when using dynamic algorithms, improving efficiency even more when using unified shared memory.
What problem does this paper attempt to address?