85 citations · 86 across the 2 of their papers we have counts for
10 papers
Loop Transformations using Clang's Abstract Syntax Tree
Michael Kruse
OpenMP 5.1 introduced the first loop nest transformation directives unroll and tile, and more are expected to be included in OpenMP 6.0. We discuss the two Abstract Syntax Tree (AS…
Customized Monte Carlo Tree Search for LLVM/Polly's Composable Loop Optimization Transformations
Jaehoon Koo, Prasanna Balaprakash, Michael Kruse +3
Polly is the LLVM project's polyhedral loop nest optimizer. Recently, user-directed loop transformation pragmas were proposed based on LLVM/Clang and Polly. The search space expose…
Autotuning PolyBench Benchmarks with LLVM Clang/Polly Loop Optimization Pragmas Using Bayesian Optimization (extended version)
Xingfu Wu, Michael Kruse, Prasanna Balaprakash +4
In this paper, we develop a ytopt autotuning framework that leverages Bayesian optimization to explore the parameter space search and compare four different supervised learning met…
Autotuning PolyBench Benchmarks with LLVM Clang/Polly Loop Optimization Pragmas Using Bayesian Optimization
Xingfu Wu, Michael Kruse, Prasanna Balaprakash +4
An autotuning is an approach that explores a search space of possible implementations/configurations of a kernel or an application by selecting and evaluating a subset of implement…
Autotuning Search Space for Loop Transformations
Michael Kruse, Hal Finkel, Xingfu Wu
One of the challenges for optimizing compilers is to predict whether applying an optimization will improve its execution speed. Programmers may override the compiler's profitabilit…
Design and Use of Loop-Transformation Pragmas
Michael Kruse, Hal Finkel
Adding a pragma directive into the source code is arguably easier than rewriting it, for instance for loop unrolling. Moreover, if the application is maintained for multiple platfo…