Learning Intermediate Representations using Graph Neural Networks for NUMA and Prefetchers Optimization
There is a large space of NUMA and hardware prefetcher configurations that can significantly impact the performance of an application. Previous studies have demonstrated how a model can automatically select configurations based on the dynamic properties of the code to achieve speedups. This paper de...
Gespeichert in:
Hauptverfasser: | , , , , |
---|---|
Format: | Artikel |
Sprache: | eng |
Schlagworte: | |
Online-Zugang: | Volltext bestellen |
Tags: |
Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
|
Zusammenfassung: | There is a large space of NUMA and hardware prefetcher configurations that
can significantly impact the performance of an application. Previous studies
have demonstrated how a model can automatically select configurations based on
the dynamic properties of the code to achieve speedups. This paper demonstrates
how the static Intermediate Representation (IR) of the code can guide
NUMA/prefetcher optimizations without the prohibitive cost of performance
profiling. We propose a method to create a comprehensive dataset that includes
a diverse set of intermediate representations along with optimum
configurations. We then apply a graph neural network model in order to validate
this dataset. We show that our static intermediate representation based model
achieves 80% of the performance gains provided by expensive dynamic performance
profiling based strategies. We further develop a hybrid model that uses both
static and dynamic information. Our hybrid model achieves the same gains as the
dynamic models but at a reduced cost by only profiling 30% of the programs. |
---|---|
DOI: | 10.48550/arxiv.2203.00611 |