%0 Generic %D 2019 %T A Collection of White Papers from the BDEC2 Workshop in San Diego, CA %A Ilkay Altintas %A Kyle Marcus %A Volkan Vural %A Shweta Purawat %A Daniel Crawl %A Gabriel Antoniu %A Alexandru Costan %A Ovidiu Marcu %A Prasanna Balaprakash %A Rongqiang Cao %A Yangang Wang %A Franck Cappello %A Robert Underwood %A Sheng Di %A Justin M. Wozniak %A Jon C. Calhoun %A Cong Xu %A Antonio Lain %A Paolo Faraboschi %A Nic Dube %A Dejan Milojicic %A Balazs Gerofi %A Maria Girone %A Viktor Khristenko %A Tony Hey %A Erza Kissel %A Yu Liu %A Richard Loft %A Pekka Manninen %A Sebastian von Alfthan %A Takemasa Miyoshi %A Bruno Raffin %A Olivier Richard %A Denis Trystram %A Maryam Rahnemoonfar %A Robin Murphy %A Joel Saltz %A Kentaro Sano %A Rupak Roy %A Kento Sato %A Jian Guo %A Jen s Domke %A Weikuan Yu %A Takaki Hatsui %A Yasumasa Joti %A Alex Szalay %A William M. Tang %A Michael R. Wyatt II %A Michela Taufer %A Todd Gamblin %A Stephen Herbein %A Adam Moody %A Dong H. Ahn %A Rich Wolski %A Chandra Krintz %A Fatih Bakir %A Wei-tsung Lin %A Gareth George %B Innovative Computing Laboratory Technical Report %I University of Tennessee %8 2019-10 %G eng %0 Journal Article %J Proceedings of the IEEE %D 2018 %T Autotuning in High-Performance Computing Applications %A Prasanna Balaprakash %A Jack Dongarra %A Todd Gamblin %A Mary Hall %A Jeffrey Hollingsworth %A Boyana Norris %A Richard Vuduc %K High-performance computing %K performance tuning programming systems %X Autotuning refers to the automatic generation of a search space of possible implementations of a computation that are evaluated through models and/or empirical measurement to identify the most desirable implementation. Autotuning has the potential to dramatically improve the performance portability of petascale and exascale applications. To date, autotuning has been used primarily in high-performance applications through tunable libraries or previously tuned application code that is integrated directly into the application. This paper draws on the authors' extensive experience applying autotuning to high-performance applications, describing both successes and future challenges. If autotuning is to be widely used in the HPC community, researchers must address the software engineering challenges, manage configuration overheads, and continue to demonstrate significant performance gains and portability across architectures. In particular, tools that configure the application must be integrated into the application build process so that tuning can be reapplied as the application and target architectures evolve. %B Proceedings of the IEEE %V 106 %P 2068–2083 %8 2018-11 %G eng %N 11 %R 10.1109/JPROC.2018.2841200