Interactive Program Debugging and Optimization for Directive-Based, Efficient GPU Computing
Oak Ridge National Laboratory
28th IEEE International Parallel and Distributed Processing Symposium, 2014
@article{lee2014interactive,
title={Interactive Program Debugging and Optimization for Directive-Based, Efficient GPU Computing},
author={Lee, Seyong and Li, Dong and Vetter, Jeffrey S},
year={2014}
}
Directive-based GPU programming models are gaining momentum, since they transparently relieve programmers from dealing with complexity of low-level GPU programming, which often reflects the underlying architecture. However, too much abstraction in directive models puts a significant burden on programmers for debugging applications and tuning performance. In this paper, we propose a directive-based, interactive program debugging and optimization system. This system enables intuitive and synergistic interaction among programmers, compilers, and runtimes for more productive and efficient GPU computing. We have designed and implemented a series of prototype tools within our new open source compiler framework, called Open Accelerator Research Compiler (OpenARC); OpenARC supports the full feature set of OpenACC V1.0. Our evaluation on twelve OpenACC benchmarks demonstrates that our prototype debugging and optimization system can detect a variety of translation errors. Additionally, the optimization provided by our prototype minimizes memory transfers, when compared to a fully manual memory management scheme.
March 7, 2014 by hgpu