Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/258915.258941acmconferencesArticle/Chapter ViewAbstractPublication PagespldiConference Proceedingsconference-collections
Article
Free access

Spill code minimization via interference region spilling

Published: 01 May 1997 Publication History

Abstract

Many optimizing compilers perform global register allocation using a Chaitin-style graph coloring algorithm. Live ranges that cannot be allocated to registers are spilled to memory. The amount of code required to spill the live range depends on the spilling heuristic used. Chaitin's spilling heuristic offers some guidance in reducing the amount of spill code produced. However, this heuristic does not allow the partial spilling of live ranges and the reduction in spill code is limited to a local level. In this paper, we present a global technique called interference region spilling that improves the spilling granularity of any local spilling heuristic. Our technique works above the local spilling heuristic, limiting the normal insertion of spill code to a portion of each spilled live range. By partially spilling live ranges, we can achieve large reductions in dynamically executed spill code; up to 75% in some cases and an average of 33.6% across the benchmarks tested.

References

[1]
BERNSTEIN, D., GOLDIN, D. Q., GOLUMBIC, M. C., KRAWCZYK, H., MANSOUR, Y., NAHSHON, I., AND PINTER, R. Y. Spill code minimization techniques for optimizing compilers. SIGPLAN Notices 2~, 7 (July 1989), 258-263. Proceedings of the A CM SIGPLAN '89 Conference on Programming Language Design and Implementation.
[2]
BRIGGS, P. Register allocation via graph coloring. Ph.D. Thesis Rice COMP TR92-183, Department of Computer Science, Rice University, 1992.
[3]
BRIGGS, P., COOPER, K. D., KENNEDY, K., AND TORCZON, L. Coloring heuristics for register allocation. $IGPLAN Notices ~~, 7 (July 1989), 275-284. Proceedings of the A CM SIGPLAN '89 Conference on Programming Language Design and Implementation.
[4]
BRIGGS, P., COOPER, K. D., AND TORCZON, L. Rematerialization. $'IGPLAN Notices 27, 7 (July 1992), 311-321. Proceedings of the A CM $IGPLAN '92 Conference on Programming Language Design and Implementation.
[5]
CHAITIN, G., AUSLANDER, M., CHANDRA, A., COCKE, J., HOPKINS, M., AND MARKSTEIN, P. Register allocation via coloring. Computer Languages 6 (1981), 47-57.
[6]
CHAITIN, G. J. Register allocation and spilling via graph coloring. SIGPLAN Notices 17, 6 (June 1982), 98-105. Proceedings of the A CM SIGPLAN '82 Symposium on Compiler Construction.
[7]
CHOW, F. C., AND HENNESSY, J. L. The prioritybased coloring approach to register allocation. A CM Trans. Program. Lang. $yst. 12, 4 (Oct. 1990), 501- 536.

Cited By

View all
  • (2024)Representing Data Collections in an SSA FormProceedings of the 2024 IEEE/ACM International Symposium on Code Generation and Optimization10.1109/CGO57630.2024.10444817(308-321)Online publication date: 2-Mar-2024
  • (2019)Composite-ISA Cores: Enabling Multi-ISA Heterogeneity Using a Single ISA2019 IEEE International Symposium on High Performance Computer Architecture (HPCA)10.1109/HPCA.2019.00026(42-55)Online publication date: Feb-2019
  • (2017)Epipolar time-of-flight imagingACM Transactions on Graphics10.1145/3072959.307368636:4(1-8)Online publication date: 20-Jul-2017
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
PLDI '97: Proceedings of the ACM SIGPLAN 1997 conference on Programming language design and implementation
May 1997
365 pages
ISBN:0897919076
DOI:10.1145/258915
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 01 May 1997

Permissions

Request permissions for this article.

Check for updates

Qualifiers

  • Article

Conference

PLDI97
Sponsor:
PLDI97: Conference on Programming Language
June 16 - 18, 1997
Nevada, Las Vegas, USA

Acceptance Rates

PLDI '97 Paper Acceptance Rate 31 of 158 submissions, 20%;
Overall Acceptance Rate 406 of 2,067 submissions, 20%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)164
  • Downloads (Last 6 weeks)35
Reflects downloads up to 17 Jan 2025

Other Metrics

Citations

Cited By

View all
  • (2024)Representing Data Collections in an SSA FormProceedings of the 2024 IEEE/ACM International Symposium on Code Generation and Optimization10.1109/CGO57630.2024.10444817(308-321)Online publication date: 2-Mar-2024
  • (2019)Composite-ISA Cores: Enabling Multi-ISA Heterogeneity Using a Single ISA2019 IEEE International Symposium on High Performance Computer Architecture (HPCA)10.1109/HPCA.2019.00026(42-55)Online publication date: Feb-2019
  • (2017)Epipolar time-of-flight imagingACM Transactions on Graphics10.1145/3072959.307368636:4(1-8)Online publication date: 20-Jul-2017
  • (2017)Rainbow particle imaging velocimetry for dense 3D fluid velocity imagingACM Transactions on Graphics10.1145/3072959.307366236:4(1-14)Online publication date: 20-Jul-2017
  • (2017)4D imaging through spray-on opticsACM Transactions on Graphics10.1145/3072959.307358936:4(1-11)Online publication date: 20-Jul-2017
  • (2016)OrcO: a concurrency-first approach to objectsACM SIGPLAN Notices10.1145/3022671.298402251:10(548-567)Online publication date: 19-Oct-2016
  • (2016)Register allocation and spilling using the expected distance heuristicSoftware—Practice & Experience10.1002/spe.239346:11(1499-1523)Online publication date: 1-Nov-2016
  • (2015)Minimization of Instructions to Access Memory by Color Flipping in the Interference GraphProceedings of the annual conference on Brazilian Symposium on Information Systems: Information Systems: A Computer Socio-Technical Perspective - Volume 110.5555/2814058.2814136(483-486)Online publication date: 26-May-2015
  • (2015)Register Loading via Linear ProgrammingAlgorithmica10.1007/s00453-014-9888-272:4(1011-1032)Online publication date: 1-Aug-2015
  • (2015)Color FlippingProceedings of the 19th Brazilian Symposium on Programming Languages - Volume 932510.1007/978-3-319-24012-1_7(81-95)Online publication date: 24-Sep-2015
  • Show More Cited By

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Login options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media