A Probabilistic Machine Learning Approach to Scheduling Parallel Loops with Bayesian Optimization

by   Kyurae Kim, et al.

This paper proposes Bayesian optimization augmented factoring self-scheduling (BO FSS), a new parallel loop scheduling strategy. BO FSS is an automatic tuning variant of the factoring self-scheduling (FSS) algorithm and is based on Bayesian optimization (BO), a black-box optimization algorithm. Its core idea is to automatically tune the internal parameter of FSS by solving an optimization problem using BO. The tuning procedure only requires online execution time measurement of the target loop. In order to apply BO, we model the execution time using two Gaussian process (GP) probabilistic machine learning models. Notably, we propose a locality-aware GP model, which assumes that the temporal locality effect resembles an exponentially decreasing function. By accurately modeling the temporal locality effect, our locality-aware GP model accelerates the convergence of BO. We implemented BO FSS on the GCC implementation of the OpenMP standard and evaluated its performance against other scheduling algorithms. Also, to quantify our method's performance variation on different workloads, or workload-robustness in our terms, we measure the minimax regret. According to the minimax regret, BO FSS shows more consistent performance than other algorithms. Within the considered workloads, BO FSS improves the execution time of FSS by as much as 22 on average.


page 10

page 13


Neural Process for Black-Box Model Optimization Under Bayesian Framework

There are a large number of optimization problems in physical models whe...

Practical Bayesian Optimization of Machine Learning Algorithms

Machine learning algorithms frequently require careful tuning of model h...

Learning Regions of Interest for Bayesian Optimization with Adaptive Level-Set Estimation

We study Bayesian optimization (BO) in high-dimensional and non-stationa...

On Provably Robust Meta-Bayesian Optimization

Bayesian optimization (BO) has become popular for sequential optimizatio...

Optimization as Estimation with Gaussian Processes in Bandit Settings

Recently, there has been rising interest in Bayesian optimization -- the...

On Controller Tuning with Time-Varying Bayesian Optimization

Changing conditions or environments can cause system dynamics to vary ov...

Autotuning PolyBench Benchmarks with LLVM Clang/Polly Loop Optimization Pragmas Using Bayesian Optimization (extended version)

In this paper, we develop a ytopt autotuning framework that leverages Ba...

Please sign up or login with your details

Forgot password? Click here to reset