mlsanityData to 7 Oct 2026

PERFOGRAPH: A Numerical Aware Program Graph Representation for Performance Optimization and Program Analysis

arXiv 2306.00210 ↗First posted 31 May 2023cs.PL cs.DC cs.LGcited by 3

Not on the map. Why?

Abstract (arXiv)

The remarkable growth and significant success of machine learning have expanded its applications into programming languages and program analysis. However, a key challenge in adopting the latest machine learning methods is the representation of programming languages, which directly impacts the ability of machine learning methods to reason about programs. The absence of numerical awareness, aggregate data structure information, and improper way of presenting variables in previous representation works have limited their performances. To overcome the limitations and challenges of current program representations, we propose a graph-based program representation called PERFOGRAPH. PERFOGRAPH can capture numerical information and the aggregate data structure by introducing new nodes and edges. Furthermore, we propose an adapted embedding method to incorporate numerical awareness. These enhancements make PERFOGRAPH a highly flexible and scalable representation that effectively captures programs intricate dependencies and semantics. Consequently, it serves as a powerful tool for various applications such as program analysis, performance optimization, and parallelism discovery. Our experimental results demonstrate that PERFOGRAPH outperforms existing representations and sets new state-of-the-art results by reducing the error rate by 7.4% (AMD dataset) and 10% (NVIDIA dataset) in the well-known Device Mapping challenge. It also sets new state-of-the-art results in various performance optimization tasks like Parallelism Discovery and NUMA and Prefetchers Configuration prediction.

Key facts. Cited by 3 papers in the map (data through 7 Oct 2026). Builds on 18 of its 43 references that are in the map. First posted on arXiv 31 May 2023.

Builds on

18 of 43 references.

References · 18

  1. 2014Adam: A Method for Stochastic Optimizationcited by 36,960
  2. 2019PyTorch: An Imperative Style, High-Performance Deep Learning Librarycited by 20,160
  3. 2017Modeling Relational Data with Graph Convolutional Networkscited by 1,684
  4. 2020CodeBERT: A Pre-Trained Model for Programming and Natural Languagescited by 1,286
  5. 2020GraphCodeBERT: Pre-training Code Representations with Data Flowcited by 600
  6. 2022UniXcoder: Unified Cross-Modal Pre-training for Code Representationcited by 355
  7. 2019Deep Graph Library: A Graph-Centric, Highly-Performant Package for Graph Neural Networkscited by 241
  8. 2017A Survey of Machine Learning for Big Code and Naturalnesscited by 220
  9. 2017Learning to Represent Programs with Graphscited by 219
  10. 2019Graph Matching Networks for Learning the Similarity of Graph Structured Objectscited by 202
  11. 2018Neural Code Comprehension: A Learnable Representation of Code Semanticscited by 59
  12. 2016Deep API Learningcited by 41
6 more
  1. 2021CompilerGym: Robust, Performant Compiler Optimization Environments for AI Researchcited by 41
  2. 2020ProGraML: Graph-based Deep Learning for Program Optimization and Analysiscited by 23
  3. 2019A Literature Study of Embeddings on Source Codecited by 18
  4. 2016A deep language model for software codecited by 14
  5. 2023Learning to Parallelize with OpenMP by Augmented Heterogeneous AST Representationcited by 14
  6. 2022Learning Intermediate Representations using Graph Neural Networks for NUMA and Prefetchers Optimizationcited by 9

Built on by

Cited by year (2026 to 7 Oct)

Citing papers per year: 2024: 1; 2025: 1; 2026: 1.

3 papers.