OpenTuner
Authors:
Open Access
- 24 August 2014
- conference paper
- Published by Association for Computing Machinery (ACM)
- p. 303-316
Abstract
Program autotuning has been shown to achieve better or more portable performance in a number of domains. However, autotuners themselves are rarely portable between projects, for a number of reasons: using a domain-informed search space representation is critical to achieving good results; search spaces can be intractably large and require advanced machine learning techniques; and the landscape of search spaces can vary greatly between different problems, sometimes requiring domain specific search techniques to explore efficiently. This paper introduces OpenTuner, a new open source framework for building domain-specific multi-objective program autotuners. OpenTuner supports fully-customizable configuration representations, an extensible technique representation to allow for domain-specific techniques, and an easy to use interface for communicating with the program to be autotuned. A key capability inside OpenTuner is the use of ensembles of disparate search techniques simultaneously; techniques that perform well will dynamically be allocated a larger proportion of tests. We demonstrate the efficacy and generality of OpenTuner by building autotuners for 7 distinct projects and 16 total benchmarks, showing speedups over prior techniques of these projects of up to 2.8x with little programmer effort.Keywords
Funding Information
- Defense Advanced Research Projects Agency (HR0011-10-9-0009)
- U.S. Department of Energy (DE-AC02-05CH11231, DESC0005288)
This publication has 24 references indexed in Scilit:
- Halide2013
- Decoupling algorithms from schedules for easy optimization of image processing pipelinesACM Transactions on Graphics, 2012
- Hyperparameter Tuning in Bandit-Based Adaptive Operator Selection2012
- An efficient evolutionary algorithm for solving incrementally structured problems2011
- Analyzing bandit-based adaptive operator selection mechanismsAnnals of Mathematics and Artificial Intelligence, 2010
- Autotuning multigrid with PetaBricks2009
- OSKI: A library of automatically tuned sparse matrix kernelsJournal of Physics: Conference Series, 2005
- Spiral: A Generator for Platform-Adapted Libraries of Signal Processing AlogorithmsThe International Journal of High Performance Computing Applications, 2004
- The LINPACK Benchmark: past, present and futureConcurrency and Computation: Practice and Experience, 2003
- Active Harmony: Towards Automated Performance Tuning2002