DeAliaser: Alias speculation using atomic region support

Wonsun Ahn, Yuelu Duan, Josep Torrellas

Research output: Contribution to journalArticlepeer-review

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.

Original languageEnglish (US)
Pages (from-to)167-180
Number of pages14
JournalACM SIGPLAN Notices
Volume48
Issue number4
DOIs
StatePublished - Apr 2013

Keywords

  • Alias Analysis
  • Atomic Region
  • Compiler Optimization
  • Transactional Memory

ASJC Scopus subject areas

  • General Computer Science

Fingerprint

Dive into the research topics of 'DeAliaser: Alias speculation using atomic region support'. Together they form a unique fingerprint.

Cite this