@inproceedings{4984c41b0391485f8b8de0dfe5eacb98,
title = "GLES: A practical GPGPU optimizing compiler using data sharing and thread coarsening",
abstract = "Writing optimized CUDA programs for General Purpose Graphics Processing Unit (GPGPU) is complicated and error-prone. Most of the former compiler optimization methods are impractical for many applications that contain divergent control flows, and they failed to fully exploit optimization opportunities in data sharing and thread coarsening. In this paper, we present GLES, an optimizing compiler for GPGPU programs. GLES proposes two optimization techniques based on divergence analysis. The first one is data sharing optimization for data reuse and bandwidth enhancement. The other one is thread granularity coarsening for reducing redundant instructions. Our experiments on 6 real-world programs show that GPGPU programs optimized by GLES achieve similar performance compared with manually tuned GPGPU programs. Furthermore, GLES is not only applicable to a much wider range of GPGPU programs than the state-of-art GPGPU optimizing compiler, but it also achieves higher or close performance on 8 out of 9 benchmarks.",
keywords = "Compiler, GPGPU;, Optimization",
author = "Zhen Lin and Xiaopeng Gao and Han Wan and Bo Jiang",
note = "Publisher Copyright: {\textcopyright} Springer International Publishing Switzerland 2015.; 27th International Workshop on Languages and Compilers for Parallel Computing, LCPC 2014 ; Conference date: 15-09-2014 Through 17-09-2014",
year = "2015",
doi = "10.1007/978-3-319-17473-0\_3",
language = "英语",
series = "Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)",
publisher = "Springer Verlag",
pages = "36--50",
editor = "James Brodman and Peng Tu",
booktitle = "Languages and Compilers for Parallel Computing - 27th International Workshop, LCPC 2014, Revised Selected Papers",
address = "德国",
}