DocumentCode :
3706570
Title :
Automatic OpenCL Code Generation for Multi-device Heterogeneous Architectures
Author :
Pei Li;Elisabeth Brunet;Francois Trahay;Christian Parrot;Gael Thomas;Raymond Namyst
fYear :
2015
Firstpage :
959
Lastpage :
968
Abstract :
Using multiple accelerators, such as GPUs or Xeon Phis, is attractive to improve the performance of large data parallel applications and to increase the size of their workloads. However, writing an application for multiple accelerators remains today challenging because going from a single accelerator to multiple ones indeed requires to deal with potentially non-uniform domain decomposition, inter-accelerator data movements, and dynamic load balancing. Writing such code manually is time consuming and error-prone. In this paper, we propose a new programming tool called STEPOCL along with a new domain specific language designed to simplify the development of an application for multiple accelerators. We evaluate both the performance and the usefulness of STEPOCL with three applications and show that: (i) the performance of an application written with STEPOCL scales linearly with the number of accelerators, (ii) the performance of an application written using STEPOCL competes with a handwritten version, (iii) larger workloads run on multiple devices that do not fit in the memory of a single device, (iv) thanks to STEPOCL, the number of lines of code required to write an application for multiple accelerators is roughly divided by ten.
Keywords :
"Kernel","Performance evaluation","Programming","Hardware","Arrays","Writing","Synchronization"
Publisher :
ieee
Conference_Titel :
Parallel Processing (ICPP), 2015 44th International Conference on
ISSN :
0190-3918
Type :
conf
DOI :
10.1109/ICPP.2015.105
Filename :
7349651
Link To Document :
بازگشت