High Productivity Multi-device Exploitation with the Heterogeneous Programming Library

Loading...
Thumbnail Image

Identifiers

Publication date

Advisors

Other responsabilities

Journal Title

Bibliographic citation

VIÑAS, Moisés, et al. High productivity multi-device exploitation with the Heterogeneous Programming Library. Journal of Parallel and Distributed Computing, 2017, vol. 101, p. 51-68. DOI: 10.1016/j.jpdc.2016.11.001

Type of academic work

Academic degree

Abstract

[Abstract] Heterogeneous devices require much more work from programmers than traditional CPUs, particularly when there are several of them, as each one has its own memory space. Multidevice applications require to distribute kernel executions and, even worse, arrays portions that must be kept coherent among the di_erent device memories and the host memory. In addition, when devices with di_erent characteristics participate in a computation, optimally distributing the work among them is not trivial. In this paper we extend an existing framework for the programming of accelerators called Heterogeneous Programming Library (HPL) with three kinds of improvements that facilitate these tasks. The _rst two ones are the ability to de_ne subarrays and subkernels, which distribute kernels on di_erent devices. The last one is a convenient extension of the subkernel mechanism to distribute computations among heterogeneous devices seeking the best work balance among them. This last contribution includes two analytical models that have proved to automatically provide very good work distributions. Our experiments also show the large programmability advantages of our approach and the negligible overhead incurred.

Description

Rights

Atribución-NoComercial-SinDerivadas 4.0 Internacional
Atribución-NoComercial-SinDerivadas 4.0 Internacional

Except where otherwise noted, this item's license is described as Atribución-NoComercial-SinDerivadas 4.0 Internacional