15778

Adaptive GPU Array Layout Auto-Tuning

Nicolas Weber, Michael Goesele
TU Darmstadt, Graduate School of Computational Engineering
Software Engineering Methods for Parallel and High Performance Applications (SEM4HPC), 2016

@article{weber2016adaptive,

   title={Adaptive GPU Array Layout Auto-Tuning},

   author={Weber, Nicolas and Goesele, Michael},

   year={2016}

}

Download Download (PDF)   View View   Source Source   Source codes Source codes

2139

views

Optimal performance is an important goal in compute intensive applications. For GPU applications, this requires a lot of experience and knowledge about the algorithms and the underlying hardware, making them an ideal target for autotuning approaches. We present an auto-tuner which optimizes array layouts in CUDA applications. Depending on the data and program parameters, kernels can have varying optimal configurations. We thus adjust array layouts adaptively at runtime and achieve or even exceed performance of hand optimized code. We automatically detect data characteristics to identify different performance scenarios without user input or additional programming. We perform an empirical analysis of the application in order to construct our decision models. Our adaptive optimization requires in principle profiling data for an extremely high number of scenarios which cannot be exhaustively evaluated for complex applications. We solve this by extending a previously published method that is able to efficiently profile single kernel calls and enhance it to find application-wide optimal solutions. Our method is able to optimize applications in a few minutes, reaching speed ups of up to 20% compared to hand optimized code.
Rating: 2.5/5. From 1 vote.
Please wait...

* * *

* * *

HGPU group © 2010-2024 hgpu.org

All rights belong to the respective authors

Contact us: