GRANITE: A Graph Neural Network Model for Basic Block Throughput Estimation

10/08/2022
by   Ondrej Sykora, et al.
14

Analytical hardware performance models yield swift estimation of desired hardware performance metrics. However, developing these analytical models for modern processors with sophisticated microarchitectures is an extremely laborious task and requires a firm understanding of target microarchitecture's internal structure. In this paper, we introduce GRANITE, a new machine learning model that estimates the throughput of basic blocks across different microarchitectures. GRANITE uses a graph representation of basic blocks that captures both structural and data dependencies between instructions. This representation is processed using a graph neural network that takes advantage of the relational information captured in the graph and learns a rich neural representation of the basic block that allows more precise throughput estimation. Our results establish a new state-of-the-art for basic block performance estimation with an average test error of 6.9 of basic blocks and microarchitectures for the x86-64 target. Compared to recent work, this reduced the error by 1.7 inference throughput by approximately 3.0x. In addition, we propose the use of multi-task learning with independent multi-layer feed forward decoder networks. Our results show that this technique further improves precision of all learned models while significantly reducing per-microarchitecture training costs. We perform an extensive set of ablation studies and comparisons with prior work, concluding a set of methods to achieve high accuracy for basic block performance estimation.

READ FULL TEXT
research
08/21/2018

Ithemal: Accurate, Portable and Fast Basic Block Throughput Estimation using Deep Neural Networks

Statically estimating the number of processor clock cycles it takes to e...
research
02/16/2022

BB-ML: Basic Block Performance Prediction using Machine Learning Techniques

Recent years have seen the adoption of Machine Learning (ML) techniques ...
research
07/29/2021

uiCA: Accurate Throughput Prediction of Basic Blocks on Recent Intel Microarchitectures

Performance models that statically predict the steady-state throughput o...
research
09/22/2019

Deep Universal Graph Embedding Neural Network

Learning powerful data embeddings has become a center piece in machine l...
research
02/09/2020

Graph Neural Distance Metric Learning with Graph-Bert

Graph distance metric learning serves as the foundation for many graph l...
research
10/08/2020

Machine Learning Enabled Scalable Performance Prediction of Scientific Codes

We present the Analytical Memory Model with Pipelines (AMMP) of the Perf...
research
04/18/2023

NPS: A Framework for Accurate Program Sampling Using Graph Neural Network

With the end of Moore's Law, there is a growing demand for rapid archite...

Please sign up or login with your details

Forgot password? Click here to reset