skip to main content
10.1145/2751205.2751248acmconferencesArticle/Chapter ViewAbstractPublication PagesicsConference Proceedingsconference-collections
research-article
Public Access

Optimistic Delinearization of Parametrically Sized Arrays

Published: 08 June 2015 Publication History

Abstract

A number of legacy codes make use of linearized array references (i.e., references to one-dimensional arrays) to encode accesses to multi-dimensional arrays. This is also true of a number of optimized libraries and the well-known LLVM intermediate representation, which linearize array accesses. In many cases, the only information available is an array base pointer and a single dimensional offset. For problems with parametric array extents, this offset is usually a multivariate polynomial. Compiler analyses such as data dependence analysis are impeded because the standard formulations with integer linear programming (ILP) solvers cannot be used. In this paper, we present an approach to delinearization, i.e., recovering the multi-dimensional nature of accesses to arrays of parametric size. In case of insufficient static information, the developed algorithm produces run-time conditions to validate the recovered multi-dimensional form. The obtained access description enhances the precision of data dependence analysis. Experimental evaluation in the context of the LLVM/Polly system using a number of benchmarks reveals significant performance benefits due to increased precision of dependence analysis and enhanced optimization opportunities that are exploited by the compiler after delinearization.

References

[1]
J. Bezanson, S. Karpinski, V. B. Shah, and A. Edelman. Julia: A fast dynamic language for technical computing. CoRR, abs/1209.5145, 2012.
[2]
M. Cierniak and W. Li. Recovering logical data and code structures. Technical report, 1995.
[3]
P. Feautrier. Dataflow analysis of array and scalar references. International Journal of Parallel Programming, 20(1):23--53, 1991.
[4]
T. Grosser, A. Größlinger, and C. Lengauer. Polly - performing polyhedral optimizations on a low-level intermediate representation. Parallel Processing Letters (PPL), 22(04), 2012.
[5]
C. Lattner and V. Adve. LLVM: A compilation framework for lifelong program analysis & transformation. In Int. Symp. on Code Generation and Optimization (CGO), 2004.
[6]
C. Lee and M. Stoodley. Utdsp benchmark suite, 1998.
[7]
V. Maslov. Delinearization: An efficient way to break multiloop dependence equations. SIGPLAN Not., 27(7):152--161, July 1992.
[8]
V. Maslov and W. Pugh. Simplifying polynomial constraints over integers to make dependence analysis more precise. In Int. Conf. on Parallel and Vector Processing, 1994.
[9]
MATLAB. version 8.4.0150421 (R2014b). The MathWorks Inc., Natick, Massachusetts, 2014.
[10]
S. Pop, A. Cohen, and G.-A. Silber. Induction variable analysis with delayed abstractions. In High Performance Embedded Architectures and Compilers, pages 218--232. Springer, 2005.
[11]
L.-N. Pouchet. PolyBench/C 3.2. http://sourceforge.net/projects/polybench/.
[12]
A. Simbürger and A. Größlinger. On the variety of static control parts in real-world programs: from affine via multi-dimensional to polynomial and just-in-time. In Proc. of the 4th Inter. Workshop on Polyhedral Compilation Techniques, Vienna, Austria, Jan. 2014.
[13]
S. Verdoolaege. isl: An integer set library for the polyhedral model. In Mathematical Software (ICMS'10), LNCS 6327, 2010.

Cited By

View all
  • (2024)Memory access protocols: certified data-race freedom for GPU kernelsFormal Methods in System Design10.1007/s10703-023-00415-063:1-3(134-171)Online publication date: 1-Oct-2024
  • (2023)Employing Polyhedral Methods to Reduce Data Movement in FPGA Stencil CodesLanguages and Compilers for Parallel Computing10.1007/978-3-031-31445-2_4(47-63)Online publication date: 10-May-2023
  • (2022)QRANE: lifting QASM programs to an affine IRProceedings of the 31st ACM SIGPLAN International Conference on Compiler Construction10.1145/3497776.3517775(15-28)Online publication date: 19-Mar-2022
  • Show More Cited By

Index Terms

  1. Optimistic Delinearization of Parametrically Sized Arrays

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image ACM Conferences
    ICS '15: Proceedings of the 29th ACM on International Conference on Supercomputing
    June 2015
    446 pages
    ISBN:9781450335591
    DOI:10.1145/2751205
    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: 08 June 2015

    Permissions

    Request permissions for this article.

    Check for updates

    Author Tags

    1. linear memory layout
    2. multi-dimensional arrays
    3. polyhedral analysis

    Qualifiers

    • Research-article

    Funding Sources

    Conference

    ICS'15
    Sponsor:
    ICS'15: 2015 International Conference on Supercomputing
    June 8 - 11, 2015
    California, Newport Beach, USA

    Acceptance Rates

    ICS '15 Paper Acceptance Rate 40 of 160 submissions, 25%;
    Overall Acceptance Rate 629 of 2,180 submissions, 29%

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)76
    • Downloads (Last 6 weeks)10
    Reflects downloads up to 16 Dec 2024

    Other Metrics

    Citations

    Cited By

    View all
    • (2024)Memory access protocols: certified data-race freedom for GPU kernelsFormal Methods in System Design10.1007/s10703-023-00415-063:1-3(134-171)Online publication date: 1-Oct-2024
    • (2023)Employing Polyhedral Methods to Reduce Data Movement in FPGA Stencil CodesLanguages and Compilers for Parallel Computing10.1007/978-3-031-31445-2_4(47-63)Online publication date: 10-May-2023
    • (2022)QRANE: lifting QASM programs to an affine IRProceedings of the 31st ACM SIGPLAN International Conference on Compiler Construction10.1145/3497776.3517775(15-28)Online publication date: 19-Mar-2022
    • (2022)ScaleHLS: A New Scalable High-Level Synthesis Framework on Multi-Level Intermediate Representation2022 IEEE International Symposium on High-Performance Computer Architecture (HPCA)10.1109/HPCA53966.2022.00060(741-755)Online publication date: Apr-2022
    • (2021)Polygeist: Raising C to Polyhedral MLIRProceedings of the 30th International Conference on Parallel Architectures and Compilation Techniques10.1109/PACT52795.2021.00011(45-59)Online publication date: 26-Sep-2021
    • (2021)Progressive raising in multi-level IRProceedings of the 2021 IEEE/ACM International Symposium on Code Generation and Optimization10.1109/CGO51591.2021.9370332(15-26)Online publication date: 27-Feb-2021
    • (2021)Checking Data-Race Freedom of GPU Kernels, CompositionallyComputer Aided Verification10.1007/978-3-030-81685-8_19(403-426)Online publication date: 15-Jul-2021
    • (2019)Declarative Loop Tactics for Domain-specific OptimizationACM Transactions on Architecture and Code Optimization10.1145/337226616:4(1-25)Online publication date: 26-Dec-2019
    • (2018)Polyhedral expression propagationProceedings of the 27th International Conference on Compiler Construction10.1145/3178372.3179529(25-36)Online publication date: 24-Feb-2018
    • (2018)PolyJIT: Polyhedral Optimization Just in TimeInternational Journal of Parallel Programming10.1007/s10766-018-0597-3Online publication date: 31-Aug-2018
    • 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