Parameterized loop tiling

Author:

Renganarayanan Lakshminarayanan1,Kim Daegon2,Strout Michelle Mills3,Rajopadhye Sanjay3

Affiliation:

1. IBM T.J. Watson Research Center, Yorktown Heights, NY

2. CORESPEQ, Inc., Milpitas, CA

3. Colorado State University, Fort Collins, CO

Abstract

Loop tiling is a widely used program optimization that improves data locality and enables coarse-grained parallelism. Parameterized tiled loops, where the tile sizes remain symbolic parameters until runtime, are quite useful for iterative compilers and autotuners that produce highly optimized libraries and codes. Although it is easy to generate such loops for (hyper-) rectangular iteration spaces tiled with (hyper-) rectangular tiles, many important computations do not fall into this restricted domain. In the past, parameterized tiled code generation for the general case of convex iteration spaces being tiled by (hyper-) rectangular tiles has been solved with bounding box approaches or with sophisticated and expensive machinery. We present a novel formulation of the parameterized tiled loop generation problem using a polyhedral set called the outset . By reducing the problem of parameterized tiled code generation to that of generating standard loops and simple postprocessing of these loops, the outset method achieves a code generation efficiency that is comparable to existing code generation techniques, including those for fixed tile sizes. We compare the performance of our technique with several other tiled loop generation methods on kernels from BLAS3 and scientific computations. The simplicity of our solution makes it well suited for use in production compilers—in particular, the IBM XL compiler uses the inset-based technique introduced in this article for register tiling. We also provide a complete coverage of parameterized tiling of perfect loop nests by describing three related techniques: (i) a scheme for separating full and partial tiles; (ii) a scheme for generating tiled loops directly from the abstract syntax tree representation of loops; (iii) a formal characterization of parameterized loop tiling using bilinear forms and a Symbolic Fourier-Motzkin Elimination (SFME)-based parameterized tiled loop generation method.

Publisher

Association for Computing Machinery (ACM)

Subject

Software

Reference43 articles.

1. Amarasinghe S. 1997. Parallelizing compiler techniques based on linear inequalities. Ph.D. thesis Stanford University. Amarasinghe S. 1997. Parallelizing compiler techniques based on linear inequalities. Ph.D. thesis Stanford University.

2. Communication optimization and code generation for distributed memory machines

3. Scanning polyhedra with DO loops

4. Optimal Orthogonal Tiling of 2-D Iterations

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

1. A Methodology for Efficient Tile Size Selection for Affine Loop Kernels;International Journal of Parallel Programming;2022-05-23

2. An Analytical Model for Loop Tiling Transformation;Lecture Notes in Computer Science;2022

3. Monoparametric Tiling of Polyhedral Programs;International Journal of Parallel Programming;2021-03-18

4. Optimizing the Memory Hierarchy by Compositing Automatic Transformations on Computations and Data;2020 53rd Annual IEEE/ACM International Symposium on Microarchitecture (MICRO);2020-10

5. Write Mode Aware Loop Tiling for High-Performance Low-Power Volatile PCM in Embedded Systems;Smart Sensors and Systems;2020

同舟云学术

1.学者识别学者识别

2.学术分析学术分析

3.人才评估人才评估

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

www.globalauthorid.com

TOP

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