Compiler transformations for high-performance computing

Author:

Bacon David F.1,Graham Susan L.1,Sharp Oliver J.1

Affiliation:

1. Computer Science Division, University of California, Berkeley, California

Abstract

In the last three decades a large number of compiler transformations for optimizing programs have been implemented. Most optimizations for uniprocessors reduce the number of instructions executed by the program using transformations based on the analysis of scalar quantities and data-flow techniques. In contrast, optimizations for high-performance superscalar, vector, and parallel processors maximize parallelism and memory locality with transformations that rely on tracking the properties of arrays using loop dependence analysis. This survey is a comprehensive overview of the important high-level program restructuring techniques for imperative languages, such as C and Fortran. Transformations for both sequential and various types of parallel architectures are covered in depth. We describe the purpose of each transformation, explain how to determine if it is legal, and give an example of its application. Programmers wishing to enhance the performance of their code can use this survey to improve their understanding of the optimizations that compilers can perform, or as a reference for techniques to be applied manually. Students can obtain an overview of optimizing compiler technology. Compiler writers can use this survey as a reference for most of the important optimizations developed to date, and as bibliographic reference for the details of each optimization. Readers are expected to be familiar with modern computer architecture and basic program compilation techniques.

Publisher

Association for Computing Machinery (ACM)

Subject

General Computer Science,Theoretical Computer Science

Reference207 articles.

1. ABELSON H. AND SUSSMAN G. J. 1985. Structure and Interpretation of Computer Programs. MIT Press Cambridge Mass. ABELSON H. AND SUSSMAN G. J. 1985. Structure and Interpretation of Computer Programs. MIT Press Cambridge Mass.

2. On the performance enhancement of paging systems through program analysis and transformations IEEE;ABU-SUFAH W.;Trans. Comput. C-30,1981

3. Data flow languages;ACKERSLAX;Computer,1982

4. Code Generation for Expressions with Common Subexpressions

5. Ago A. V. SF~THI R. AND ULLMAN J. D. 1986. Compilers. Prtnc~ples Techniques and Tools. Addison-Wesley Reading Mass. Ago A. V. SF~THI R. AND ULLMAN J. D. 1986. Compilers. Prtnc~ples Techniques and Tools. Addison-Wesley Reading Mass.

Cited by 371 articles. 订阅此论文施引文献 订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献

1. Improving the Resource Efficiency and Applicability of Fpga-Based Cnn Accelerator Through Loop Optimization;2024

2. Detection of Optimizations Missed by the Compiler;Proceedings of the 31st ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering;2023-11-30

3. Enhancing Coverage-Guided Fuzzing via Phantom Program;Proceedings of the 31st ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering;2023-11-30

4. End-to-end programmable computing systems;Communications Engineering;2023-11-24

5. Evaluating the Resiliency of Posits for Scientific Computing;Proceedings of the SC '23 Workshops of The International Conference on High Performance Computing, Network, Storage, and Analysis;2023-11-12

同舟云学术

1.学者识别学者识别

2.学术分析学术分析

3.人才评估人才评估

"同舟云学术"是以全球学者为主线,采集、加工和组织学术论文而形成的新型学术文献查询和分析系统,可以对全球学者进行文献检索和人才价值评估。用户可以通过关注某些学科领域的顶尖人物而持续追踪该领域的学科进展和研究前沿。经过近期的数据扩容,当前同舟云学术共收录了国内外主流学术期刊6万余种,收集的期刊论文及会议论文总量共计约1.5亿篇,并以每天添加12000余篇中外论文的速度递增。我们也可以为用户提供个性化、定制化的学者数据。欢迎来电咨询!咨询电话:010-8811{复制后删除}0370

www.globalauthorid.com

TOP

Copyright © 2019-2024 北京同舟云网络信息技术有限公司
京公网安备11010802033243号  京ICP备18003416号-3