Loop Splitting Optimization Via Semi-Invariance Analysis in Static Single Assignment Form

Loop splitting is a key compiler optimization technique for reducing control overhead and improving pipeline efficiency. To address the limited applicability of the existing loop splitting strategy in GCC compiler, an improved algorithm is proposed based on Static Single Assignment form. It categorizes condition variables by their positions in PHI nodes into loop-header PHI node condition variables and merge PHI node condition variables. For these two types of condition variables, the algorithm performs semi-invariance analysis separately and selects partitioning points accordingly, thereby achieving more general loop splitting optimization. The algorithm is implemented in the Sunway GCC compiler. Experimental results show that, compared to the original loop splitting algorithm, the algorithm improves the performance of the <tex xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">$470. \text{lbm}$</tex> benchmark in SPEC CPU 2006 test suite by 8.8%, and the <tex xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">$620.0 m n e t p p_{s}$</tex> benchmark in SPEC CPU 2017 test suite by 4.3%. This method expands the scope of optimizable loop structures, improves the optimization efficiency of the Sunway GCC compiler, and can provide assistance for the basic software ecosystem construction of the domestic Sunway platform.

Authors

Institutions

Publication Details

Published
2025-04-25
DOI
https://doi.org/10.1109/iccea65460.2025.11103279
Primary Topic
VLSI and FPGA Design Techniques
Type
article
Field-Weighted Citation Impact
0.00
Controls
|||
ALL TIME
JAN
FEB
MAR
APR
MAY
JUN
JUL
AUG
SEP
OCT
article

Loop Splitting Optimization Via Semi-Invariance Analysis in Static Single Assignment Form

H. Liu, Kai Nie, Mengyao Chen, Jingjing Shao et al.
VLSI and FPGA Design Techniques
article

Loop Splitting Optimization Via Semi-Invariance Analysis in Static Single Assignment Form

H. Liu, Kai Nie, Mengyao Chen, Jingjing Shao, Lin Han, Haoran Li
article en

Abstract

Loop splitting is a key compiler optimization technique for reducing control overhead and improving pipeline efficiency. To address the limited applicability of the existing loop splitting strategy in GCC compiler, an improved algorithm is proposed based on Static Single Assignment form. It categorizes condition variables by their positions in PHI nodes into loop-header PHI node condition variables and merge PHI node condition variables. For these two types of condition variables, the algorithm performs semi-invariance analysis separately and selects partitioning points accordingly, thereby achieving more general loop splitting optimization. The algorithm is implemented in the Sunway GCC compiler. Experimental results show that, compared to the original loop splitting algorithm, the algorithm improves the performance of the <tex xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">$470. \text{lbm}$</tex> benchmark in SPEC CPU 2006 test suite by 8.8%, and the <tex xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">$620.0 m n e t p p_{s}$</tex> benchmark in SPEC CPU 2017 test suite by 4.3%. This method expands the scope of optimizable loop structures, improves the optimization efficiency of the Sunway GCC compiler, and can provide assistance for the basic software ecosystem construction of the domestic Sunway platform.

Zhengzhou University (CN), National Supercomputing Center in Wuxi (CN)
Reduced inequalities
Openalex Percentile: Top 81%
VLSI and FPGA Design Techniques
AI Navigator

Ask Laika to Summarize, Analyze, and Connect papers live on the map.

Summarize Papers & Methodologies

Extract key findings, datasets, and comparative methods across publications.

Benchmark Rankings & Visual Analytics

Rank top research institutions, authors, funders, topics, and journals by Field-Weighted Citation Impact (FWCI) and paper volume with instant charts.

Connect Distant Disciplines

Bridge topological clusters on the map to find hidden collaborative intersections.