# Machine Learning Based Auto-tuning for Enhanced OpenCL Performance Portability

arXiv: https://arxiv.org/abs/1506.00842 · HTML: https://mlsanity.com/paper/1506.00842/

## Key facts

- Cited by 7 papers in the map (data through 14 Oct 2026).
- First posted on arXiv 2 Jun 2015.

## Built on by (most cited first, 7 of 7)

- [Deep Configuration Performance Learning: A Systematic Survey and Taxonomy](https://mlsanity.com/paper/2403.03322/) (2024)
- [Using hardware performance counters to speed up autotuning convergence on GPUs](https://mlsanity.com/paper/2102.05297/) (2021)
- [Tuning the Tuner: Introducing Hyperparameter Optimization for Auto-Tuning](https://mlsanity.com/paper/2509.26300/) (2025)
- [Towards a learning-based performance modeling for accelerating Deep Neural Networks](https://mlsanity.com/paper/2212.05031/) (2022)
- [Performance Tuning for GPU-Embedded Systems: Machine-Learning-based and Analytical Model-driven Tuning Methodologies](https://mlsanity.com/paper/2310.16214/) (2023)
- [Optimal Kernel Tuning Parameter Prediction using Deep Sequence Models](https://mlsanity.com/paper/2404.10162/) (2024)
- [Automated Algorithm Design for Auto-Tuning Optimizers](https://mlsanity.com/paper/2510.17899/) (2025)

## Abstract (arXiv)

Heterogeneous computing, which combines devices with different architectures, is rising in popularity, and promises increased performance combined with reduced energy consumption. OpenCL has been proposed as a standard for programing such systems, and offers functional portability. It does, however, suffer from poor performance portability, code tuned for one device must be re-tuned to achieve good performance on another device. In this paper, we use machine learning-based auto-tuning to address this problem. Benchmarks are run on a random subset of the entire tuning parameter configuration space, and the results are used to build an artificial neural network based model. The model can then be used to find interesting parts of the parameter space for further search. We evaluate our method with different benchmarks, on several devices, including an Intel i7 3770 CPU, an Nvidia K40 GPU and an AMD Radeon HD 7970 GPU. Our model achieves a mean relative error as low as 6.1%, and is able to find configurations as little as 1.3% worse than the global minimum.
