16817

Translating OpenMP Device Constructs to OpenCL using Unnecessary Data Transfer Elimination

Junghyun Kim, Yong-Jun Lee, Jungho Park, Jaejin Lee
Center for Manycore Programming, Department of Computer Science and Engineering, Seoul National University, Seoul 08826, Korea
International Conference for High Performance Computing, Networking, Storage and Analysis (SC ’16), 2016

@inproceedings{Kim:2016:TOD:3014904.3014973,

   author={Kim, Junghyun and Lee, Yong-Jun and Park, Jungho and Lee, Jaejin},

   title={Translating OpenMP Device Constructs to OpenCL Using Unnecessary Data Transfer Elimination},

   booktitle={Proceedings of the International Conference for High Performance Computing, Networking, Storage and Analysis},

   series={SC ’16},

   year={2016},

   isbn={978-1-4673-8815-3},

   location={Salt Lake City, Utah},

   pages={51:1–51:12},

   articleno={51},

   numpages={12},

   url={http://dl.acm.org/citation.cfm?id=3014904.3014973},

   acmid={3014973},

   publisher={IEEE Press},

   address={Piscataway, NJ, USA}

}

Download Download (PDF)   View View   Source Source   

1879

views

In this paper, we propose a framework that translates OpenMP 4.0 accelerator directives to OpenCL. By translating an OpenMP program to an OpenCL program, the program can be executed on any hardware platform that supports OpenCL. We also propose a run-time optimization technique that automatically eliminates unnecessary data transfers between the host and the target accelerator. It exploits the page-fault mechanism to detect if a copy of the memory object already resides in the accelerator and the copy has not been modified by the host. To evaluate the framework, we develop 17 OpenMP 4.0 benchmark applications in two versions: basic and hand-tuned. By evaluating them on three different GPUs with the original OpenCL and OpenMP programs, we show the effectiveness of the framework. To show the practicality of the framework, we compare the performance of generated OpenCL programs with that of equivalent OpenACC programs compiled by the commercial PGI compiler.
No votes yet.
Please wait...

* * *

* * *

HGPU group © 2010-2024 hgpu.org

All rights belong to the respective authors

Contact us: