Variable liberalization

Sanyam Mehta, Pen Chung Yew

Research output: Contribution to journalArticlepeer-review

5 Scopus citations

Abstract

In the wake of the current trend of increasing the number of cores on a chip, compiler optimizations for improving the memory performance have assumed increased importance. Loop fusion is one such key optimization that can alleviate memory and bandwidth wall and thus improve parallel performance. However, we find that loop fusion in interesting memory-intensive applications is prevented by the existence of dependences between temporary variables that appear in different loop nests. Furthermore, known techniques of allowing useful transformations in the presence of temporary variables, such as privatization and expansion, prove insufficient in such cases. In this work, we introduce variable liberalization, a technique that selectively removes dependences on temporary variables in different loop nests to achieve loop fusion while preserving the semantical correctness of the optimized program. This removal of extra-stringent dependences effectively amounts to variable expansion, thus achieving the benefit of an increased degree of freedom for program transformation but without an actual expansion. Hence, there is no corresponding increase in the memory footprint incurred. We implement liberalization in the Pluto polyhedral compiler and evaluate its performance on nine hot regions in five real applications. Results demonstrate parallel performance improvement of 1.92× over the Intel compiler, averaged over the nine hot regions, and an overall improvement of as much as 2.17× for an entire application, on an eight-core Intel Xeon processor.

Original languageEnglish (US)
Article number23
JournalACM Transactions on Architecture and Code Optimization
Volume13
Issue number3
DOIs
StatePublished - Aug 2016

Bibliographical note

Publisher Copyright:
© 2016 ACM.

Keywords

  • Dependence refinement
  • Liberalization
  • Loop fusion
  • Parallelization
  • Polyhedral compiler
  • Scheduling

Fingerprint

Dive into the research topics of 'Variable liberalization'. Together they form a unique fingerprint.

Cite this