July 23rd, 2013

INSIEME: A Multi-Objective Auto-Tuning Compiler for Parallel Programs

Thomas Fahringer

Professor Institute of Computer Science
University of Innsbruck

Efficient parallelization and optimization for modern parallel architectures is a time-consuming and error-prone task that requires numerous iterations of code transformations, tuning and performance analysis which in many cases have to be redone for each different architecture. In this talk we introduce a novel auto-tuning compiler named INSIEME which consists of a compiler component featuring a multi-objective optimizer and a runtime system. The multi-objective optimizer derives a set of non-dominated solutions, each of them expressing a trade-off among different conflicting objectives such as runtime and efficiency. This set is commonly known as Pareto set. Our search algorithm, which explores code transformations and their parameter settings, is based on differential evolution. Additionally, rough sets are employed to reduce the search space, and thus the number of evaluations required during compilation. We demonstrate our approach by tuninng loop tiling in cache sensitive parallel programs, optimizing for both runtime and efficiency. We show that parallelism-aware multi-versioning can gain a peerformance improvement of up to 70% over solutions tuned for only a specific number of threads.

About Thomas Fahringer

Prof. Dr. Thomas Fahringer is a professor of computer science in the Institute of Computer Science at UIBK. His research interests are programming languages, performance tools, debuggers, compiler analysis and program optimization based on advanced technologies such as genetic algorithms and machine learning. He has a long research history on parallel and distributed high performance systems and their applications starting in 1988. He participated in numerous EU-funded (ESPRIT PPPE, ESPRIT APART 1 and IST APART 2, ESPRIT Eurotools), international (including DARPA, NSF and NASA funded projects) and national projects. He has also been involved in many Grid-related performance-oriented projects such as IST K-Wf Grid, IST ASG, IST CoreGRID and IST EGEE. He coordinated the FP6 edutain@grid STREP project, which completed in August 2009. He is currently leading the development of Insieme parallelizing and optimizing compiler for heterogeneous Multicore based parallel computing systems which is funded by the Austrian FFG (Austrian Research Promotion Agency) and FWF (Austrian Science Fund). He is currently the coordinator of the Chist-ERA GEMSCLAIM project (greener mobile systems by cross layer integrated energy management, http://www.gemsclaim.eu, FWF) and the AutoCore project (high performance production simulations in the automotive industry with many-core parallel computing systems, FWF). He also participates in the En-Act project (energy-aware computing, http://www.en-act.eu). He has published over 160 papers in the area of performance-oriented parallel and distributed high-performance computing including 30 journal articles, 4 books and has won 3 best paper awards at top ranking IEEE and ACM conferences in the area of parallel computing. His current h/g index according to HarzingĀ“s Publish or Perish is 30/53.