arrow
Return

The Parallel-Semantics Program Dependence Graph for Parallel Optimization

delete2026-01-01
delete0
PRE
AI
Y
Yian Su *
B
Brian Homerding
H
Haocheng Gao
F
Federico Sossai
Y
Yebin Chon
D
David I. August
S
Simone Campanoni
DOI:10.1109/CGO68049.2026.11395217delete
deleteOriginal
deleteOriginal request for help
deleteShare
deleteSave
Abstract

Abstract

En 中文
Modern shared-memory parallel programming models, such as OpenMP and Cilk, enable developers to encode a parallel execution plan within their code. Existing compilers, including Clang and GCC, directly lower or add additional compatible parallelism on top of the developers' plan. However, when better parallel execution plans exist that are incompatible with the original plan, compilers lack the capability of disregarding it and replacing it with a better one. To address this problem, this paper introduces the parallel-semantics program dependence graph (PS-PDG), an extension of the program dependence graph (PDG) abstraction that can simultaneously represent parallel semantics derived from both the developer's original plan and the compiler's own analysis. To demonstrate the power of PSPDG, this paper also introduces GINO, an LLVM-based compiler capable of optimizing parallel execution plans using PS-PDG. Through exploring, reasoning, and implementing better parallel execution plans unlocked by PS-PDG, GINO outperforms the developer's original parallel execution plan by 46.6% at most, and by 15% on average over 56 cores across 8 benchmarks from the NAS benchmark suite.
Keywords:
IMPLEMENTATION

Journal

2
2026 IEEE/ACM INTERNATIONAL SYMPOSIUM ON CODE GENERATION AND OPTIMIZATION, CGO
IF:
0
Papers:
48
Citations:
0

Organization

N
Northwestern University
Scholars:
6.2W
Papers: 5.3W
Citations: 3.9K
P
princeton university
Scholars:
3.2K
Papers: 1.6K
Citations: 0
Cited Papers

Cited Papers

The implementation of the Cilk-5 multithreaded language
err1998-05-01
err0
errOAAI
errMatteo Frigo; Charles E. Leiserson; Keith H. Randall
errShare
errSave
err
IF0
err
err0
PREAI
err
errShare
errSave
err
IF0
err
err0
PREAI
err
errShare
errSave
Disentanglement in nested-parallel programs
err2020-01-01
err0
PREAI
errWestrick,Sam; Yadav,Rohan; Fluet,Matthew; Acar,Umut A.
errShare
errSave
The NAS parallel benchmarks---summary and preliminary results
err1991-01-01
err0
PREAI
errD. H. Bailey; R. S. Schreiber; H. D. Simon; V. Venkatakrishnan; S. K. Weeratunga; E. Barszcz; J. T. Barton; D. S. Browning; R. L. Carter; L. Dagum; R. A. Fatoohi; P. O. Frederickson; T. A. Lasinski
errShare
errSave
err
IF0
err
err0
PREAI
err
errShare
errSave
errShare
errSave
Tapir
err2017-01-26
err0
errOAAI
errTao B. Schardl; William S. Moses; Charles E. Leiserson
errShare
errSave
Parallelization of DOALL and DOACROSS Loops—a Survey
err1997-01-01
err0
PREAI
errA.R. Hurson; Joford T. Lim; Krishna M. Kavi; Ben Lee
errShare
errSave
researcher View more