Parallelizing Instruction Scheduling for the GPU on the GPU

In this article, we describe how to use the GPU to parallelize a precise search-based algorithm for solving the instruction scheduling problem for a GPU target. Instruction scheduling for the GPU is a multi-objective optimization problem in which the challenge lies in balancing the conflicting objectives of minimizing register pressure (RP) and maximizing instruction-level parallelism (ILP). We solve this problem using a precise algorithm that is based on Ant Colony Optimization (ACO), which is a nature-inspired intelligent-search technique that has been used to compute precise solutions to NP-hard problems in operations research (OR). Such intelligent-search techniques were not used in the past to solve NP-hard compiler optimization problems, because they require substantially more computation than the heuristic techniques used in production compilers. In this article, we show that parallelizing such a technique on the GPU does not only make it reasonably practical for compilation, but it also makes it possible to simultaneously explore different ways of balancing RP and ILP. Different groups of GPU threads search for solutions that balance RP and ILP differently, and then the most balanced solution is selected based on a certain cost function. We also describe a number of techniques that we developed to efficiently parallelize an ACO algorithm for solving this multi-objective optimization problem on the GPU. The experimental evaluation shows that parallel ACO-based scheduling on the GPU runs up to 21 times faster than sequential ACO-based scheduling on the CPU, and this leads to reducing the total compile time of the rocPRIM benchmarks by 42%. ACO-based scheduling improves the execution speed of the compiled benchmarks by up to 72% relative to AMD’s production scheduler. To the best of our knowledge, our work is the first successful attempt to parallelize a compiler optimization algorithm on the GPU.

Authors

Institutions

Publication Details

Journal
ACM Transactions on Architecture and Code Optimization
Published
2026-10-30
DOI
https://doi.org/10.1145/3860328
Primary Topic
Parallel Computing and Optimization Techniques
Type
article
Field-Weighted Citation Impact
0.00

Funders

Controls
|||
ALL TIME
JAN
FEB
MAR
APR
MAY
JUN
JUL
AUG
SEP
OCT
article

Parallelizing Instruction Scheduling for the GPU on the GPU

Ghassan Shobaki, Pınar Muyan‐Özçelik, Austin Kerbow, Vladislav Malyshenko et al.
ACM Transactions on Architecture and Code Optimization
Parallel Computing and Optimization Techniques
article

Parallelizing Instruction Scheduling for the GPU on the GPU

Ghassan Shobaki, Pınar Muyan‐Özçelik, Austin Kerbow, Vladislav Malyshenko, Vahl Gordon, Joshua Grindstaff, Phoebe Linck, Joshua Hutton
article en

Abstract

In this article, we describe how to use the GPU to parallelize a precise search-based algorithm for solving the instruction scheduling problem for a GPU target. Instruction scheduling for the GPU is a multi-objective optimization problem in which the challenge lies in balancing the conflicting objectives of minimizing register pressure (RP) and maximizing instruction-level parallelism (ILP). We solve this problem using a precise algorithm that is based on Ant Colony Optimization (ACO), which is a nature-inspired intelligent-search technique that has been used to compute precise solutions to NP-hard problems in operations research (OR). Such intelligent-search techniques were not used in the past to solve NP-hard compiler optimization problems, because they require substantially more computation than the heuristic techniques used in production compilers. In this article, we show that parallelizing such a technique on the GPU does not only make it reasonably practical for compilation, but it also makes it possible to simultaneously explore different ways of balancing RP and ILP. Different groups of GPU threads search for solutions that balance RP and ILP differently, and then the most balanced solution is selected based on a certain cost function. We also describe a number of techniques that we developed to efficiently parallelize an ACO algorithm for solving this multi-objective optimization problem on the GPU. The experimental evaluation shows that parallel ACO-based scheduling on the GPU runs up to 21 times faster than sequential ACO-based scheduling on the CPU, and this leads to reducing the total compile time of the rocPRIM benchmarks by 42%. ACO-based scheduling improves the execution speed of the compiled benchmarks by up to 72% relative to AMD’s production scheduler. To the best of our knowledge, our work is the first successful attempt to parallelize a compiler optimization algorithm on the GPU.

ACM Transactions on Architecture and Code Optimization
California State University, Sacramento (US)
National Science Foundation, Advanced Micro Devices, California State University, Sacramento
Openalex Percentile: Top 9%
Parallel Computing and Optimization Techniques
AI Navigator

Ask Laika to Summarize, Analyze, and Connect papers live on the map.

Summarize Papers & Methodologies

Extract key findings, datasets, and comparative methods across publications.

Benchmark Rankings & Visual Analytics

Rank top research institutions, authors, funders, topics, and journals by Field-Weighted Citation Impact (FWCI) and paper volume with instant charts.

Connect Distant Disciplines

Bridge topological clusters on the map to find hidden collaborative intersections.

Laika access coming soon