OpenTuner: An Extensible Framework for Program Autotuning
Name
MIT-CSAIL-TR-2013-026.pdf
Size
440.57 KB
Format
Adobe PDF
Checksum (MD5)
7c74aeba6b964db6821c51031dac5281
Download all files submitted through automated deposit
Author(s) • • • •
Ansel, Jason
Kamil, Shoaib
Veeramachaneni, Kalyan
O'Reilly, Una-May
Amarasinghe, Saman
Advisor(s)
Saman Amarasinghe
Date Issued
November 1, 2013
Series/Report no.
MIT-CSAIL-TR-2013-026
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 6 distinct projects and 14 total benchmarks, showing speedups over prior techniques of these projects of up to 2.8x with little programmer effort.
Persistent DSpace Link