On-the-fly elimination of dynamic irregularities for GPU computing

Eddy Z. Zhang, Yunlian Jiang, Ziyu Guo, Kai Tian, Xipeng Shen
2011 SIGARCH Computer Architecture News  
The power-efficient massively parallel Graphics Processing Units (GPUs) have become increasingly influential for scientific computing over the past few years. However, their efficiency is sensitive to dynamic irregular memory references and control flows in an application. Experiments have shown great performance gains when these irregularities are removed. But it remains an open question how to achieve those gains through software approaches on real GPUs. In this paper, we present a systematic
more » ... exploration to tackle dynamic irregularities in both control flows and memory references. We report findings on their inherent properties, including interactions among different types of irregularities, their relations with program data and threads, the computational complexities in removing them, and heuristics-based algorithms for their removal through data reordering, job swapping, and hybrid transformations. Based on these findings, we develop a framework, named G-Streamline, as a unified software solution to dynamic irregularities in GPU computing. G-Streamline has several distinctive properties. It is a pure software solution and works on the fly, requiring no hardware extensions or offline profiling. It treats both types of irregularities at the same time in a holistic fashion, maximizing the whole-program performance by resolving conflicts among optimizations. Its optimization overhead is largely transparent to GPU kernel executions, jeopardizing no basic efficiency of the GPU application. Finally, it is robust to the presence of various complexities in GPU applications. Our experiments results demonstrate that G-Streamline is effective in reducing both types of dynamic irregularities and is capable of producing significant performance improvements for a variety of applications.
doi:10.1145/1961295.1950408 fatcat:yigrclg2ebcyveb2hydo7wiacq