An Automatic Host and Device Memory Allocation Method for OpenMPC
Nagoya Institute of Technology, Gokiso, Showa, Nagoya, Japan
3rd Int’l. Conf. on Networking and Computing (ICNC’12), 2012
@inproceedings{sobue:wanc:2012,
author={Kosuke SOBUE and Tomoaki TSUMURA and Hiroshi MATSUO},
title={An Efficient Thread Recombinnig at Program Phase Changes},
booktitle={Proc. 3rd Int’l Workshop on Advances in Networking and Computing (WANC’12)},
pages={316–320},
year={2012},
month={Dec.},
publisher={IEEE},
doi={10.1109/ICNC.2012.59},
location={Okinawa, Japan}
}
The CUDA programming model provides better abstraction for GPU programming. However, it is still hard to write programs with CUDA because both some specific techniques and knowledge about GPU architecture is required. Hence, many programming frameworks for CUDA have been developed. OpenMPC is one of them based on OpenMP. OpenMPC s an easy-to-write framework for programmers familiar wih traditional OpenMP, but still requires programmers to use the special directives for utilizing fast device memories. To solve this problem, this paper proposes a method for allocating appropriate device memories automatically. This paper also proposes a method for automatically allocating page locaked memory for the data which are transferred between host and device. The evaluation results with several prgrams show that proposed methods can reduce 52% execution time in maximum.
December 20, 2012 by hgpu