Affiliation:
1. University of Illinois at Urbana-Champaign, Champaign, IL, USA
Abstract
Alias analysis is a critical component in many compiler optimizations. A promising approach to reduce the complexity of alias analysis is to use speculation. The approach consists of performing optimizations assuming the alias relationships that are true most of the time, and repairing the code when such relationships are found not to hold through runtime checks.
This paper proposes a general alias speculation scheme that leverages upcoming hardware support for transactions with the help of some ISA extensions. The ability of transactions to checkpoint and roll back frees the compiler to pursue aggressive optimizations without having to worry about recovery code. Also, exposing the memory conflict detection hardware in transactions to software allows runtime checking of aliases with little or no overhead. We test the potential of the novel alias speculation approach with Loop Invariant Code Motion (LICM), Global Value Numbering (GVN), and Partial Redundancy Elimination (PRE) optimization passes. On average, they are shown to reduce program execution time by 9% in SPEC FP2006 applications and 3% in SPEC INT2006 applications over the alias analysis of a state-of-the-art compiler.
Publisher
Association for Computing Machinery (ACM)
Subject
Computer Graphics and Computer-Aided Design,Software
Reference43 articles.
1. Intel Architecture Instruction Set Extensions Programmig Reference. Intel Corporation February 2012. Intel Architecture Instruction Set Extensions Programmig Reference. Intel Corporation February 2012.
2. POWER ISA Transactional Memory. IBM Corp. December 2012. POWER ISA Transactional Memory. IBM Corp. December 2012.
3. BulkCompiler
4. Detecting equality of variables in programs
Cited by
1 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. ORAQL — Optimistic Responses to Alias Queries in LLVM;Proceedings of the 52nd International Conference on Parallel Processing;2023-08-07