OMP2HMPP: HMPP Source Code Generation from Programs with Pragma Extensions
Universitat Autonoma de Barcelona, Edifici Q, Campus de la UAB, Bellaterra, Spain
arXiv:1407.6932 [cs.DC], (25 Jul 2014)
@article{2014arXiv1407.6932S,
author={Sa{‘a}-Garriga}, A. and {Castells-Rufas}, D. and {Carrabina}, J.},
title={"{OMP2HMPP: HMPP Source Code Generation from Programs with Pragma Extensions}"},
journal={ArXiv e-prints},
archivePrefix={"arXiv"},
eprint={1407.6932},
primaryClass={"cs.DC"},
keywords={Computer Science – Distributed, Parallel, and Cluster Computing, D.3.2, D.3.4},
year={2014},
month={jul},
adsurl={http://adsabs.harvard.edu/abs/2014arXiv1407.6932S},
adsnote={Provided by the SAO/NASA Astrophysics Data System}
}
High-performance computing are based more and more in heterogeneous architectures and GPGPUs have become one of the main integrated blocks in these, as the recently emerged Mali GPU in embedded systems or the NVIDIA GPUs in HPC servers. In both GPGPUs, programming could become a hurdle that can limit their adoption, since the programmer has to learn the hardware capabilities and the language to work with these. We present OMP2HMPP, a tool that, automatically trans-lates a high-level C source code(OpenMP) code into HMPP. The generated version rarely will differs from a hand-coded HMPP version, and will provide an important speedup, near 113%, that could be later improved by hand-coded CUDA. The generated code could be transported either to HPC servers and to embedded GPUs, due to the commonalities between them.
July 28, 2014 by hgpu