CGO 2024
Sat 2 - Wed 6 March 2024 Edinburgh, United Kingdom
Wed 6 Mar 2024 11:50 - 12:10 at Tinto - Acceleration Techniques Chair(s): Amir Shaikhha

In this paper, we show how to use the GPU to parallelize a precise instruction scheduling algorithm that is based on Ant Colony Optimization (ACO). ACO 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 work, we show that parallelizing such a compute-intensive technique on the GPU makes using it in compilation reasonably practical. The register-pressure-aware instruction scheduling problem addressed in this work is a multi-objective optimization problem that is significantly more complex than the problems that were previously solved using parallel ACO on the GPU. We describe a number of techniques that we have developed to efficiently parallelize an ACO algorithm for solving this multi-objective optimization problem on the GPU. The target processor is also a GPU. Our experimental evaluation shows that parallel ACO-based scheduling on the GPU runs up to 27 times faster than sequential ACO-based scheduling on the CPU, and this leads to reducing the total compile time of the rocPRIM benchmarks by 21%. ACO-based scheduling improves the execution-speed of the compiled benchmarks by up to 74% 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.

Wed 6 Mar

Displayed time zone: London change

11:30 - 12:50
Acceleration TechniquesMain Conference at Tinto
Chair(s): Amir Shaikhha University of Edinburgh
11:30
20m
Talk
A System-Level Dynamic Binary Translator using Automatically-Learned Translation Rules
Main Conference
Jinhu Jiang Fudan University, Chaoyi Liang Fudan University, Rongchao Dong Fudan University, Zhaohui Yang Fudan University, Zhongjun Zhou Fudan University, Wenwen Wang University of Georgia, Pen-Chung Yew University of Minnesota at Twin Cities, Weihua Zhang Fudan University
Pre-print
11:50
20m
Talk
Instruction Scheduling for the GPU on the GPU
Main Conference
Ghassan Shobaki California State University, Pınar Muyan-Özçelik California State University, Josh Hutton California State University, Bruce Linck California State University, Vladislav Malyshenko California State University, Austin Kerbow Advanced Micro Devices, Ronaldo Ramirez-Ortega California State University, Vahl Scott Gordon California State University
12:10
20m
Talk
JITSPMM: Just-in-Time Instruction Generation for Accelerated Sparse Matrix-Matrix Multiplication
Main Conference
Qiang Fu Advanced Micro Devices, Thomas B. Rolinger NVIDIA, H. Howie Huang George Washington University
Pre-print
12:30
20m
Talk
oneDNN Graph Compiler: A Hybrid Approach for High-Performance Deep Learning Compilation
Main Conference
Jianhui Li Intel, Zhennan Qin Intel, Yijie Mei Intel, Jingze Cui Intel, Yunfei Song Intel, Ciyong Chen Intel, Yifei Zhang Intel, Longsheng Du Intel, Xianhang Cheng Intel, Baihui Jin Intel, Yan Zhang Intel, Jason Ye Intel, Eric Lin Intel, Dan Lavery Intel
Pre-print