An overview on loop tiling techniques for code generation

被引:8
|
作者
Hammami, Emna [1 ]
Slama, Yosr [1 ]
机构
[1] Univ Tunis El Manar, Fac Sci Tunis, Univ Campus 2092 Manar 2, Tunis, Tunisia
来源
2017 IEEE/ACS 14TH INTERNATIONAL CONFERENCE ON COMPUTER SYSTEMS AND APPLICATIONS (AICCSA) | 2017年
关键词
code generation; code optimization; iteration space; loop; parallelization; size; shape; tiling; LOCALITY;
D O I
10.1109/AICCSA.2017.168
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
Loop tiling is a well-known compiler transformation for both sequential and parallel programs optimization. It focuses on the efficient execution of loop nests in order to generate high-performance codes running on modern architectures by increasing the amount of data reuse as well as data locality. Thus, by reordering loop iterations, accesses to the close data become within a relatively short timeframe. Our present work involves a thorough study on the major known tiling techniques. It permits first to uncover several tiling features, e.g. the shape which depends on the target program dependencies, the size where we distinguish between static and parametrized tiling, and the area which aims at tiling for parallelism and/or cache optimization. Then, we present the most recent code generators using the tiling technique in order to highlight the interest of loop tiling transformation for automatic parallelization in general and code generation in particular.
引用
收藏
页码:280 / 287
页数:8
相关论文
共 50 条
  • [1] Code generation methods for tiling transformations
    Goumas, G
    Athanasaki, M
    Koziris, N
    JOURNAL OF INFORMATION SCIENCE AND ENGINEERING, 2002, 18 (05) : 667 - 691
  • [2] CubeGen: Code Generation for Accelerated GEMM-Based Convolution with Tiling
    Phaosawasdi, Amarin
    Rodrigues, Christopher
    Chen, Long
    Wu, Peng
    LANGUAGES AND COMPILERS FOR PARALLEL COMPUTING, LCPC 2019, 2021, 11998 : 147 - 163
  • [3] Parameterized Loop Tiling
    Renganarayanan, Lakshminarayanan
    Kim, Daegon
    Strout, Michelle Mills
    Rajopadhye, Sanjay
    ACM TRANSACTIONS ON PROGRAMMING LANGUAGES AND SYSTEMS, 2012, 34 (01):
  • [4] Message-passing code generation for non-rectangular tiling transformations
    Goumas, Georgios
    Drosinos, Nikolaos
    Athanasaki, Maria
    Koziris, Nectarios
    PARALLEL COMPUTING, 2006, 32 (10) : 711 - 732
  • [5] Diamond Tiling: Tiling Techniques to Maximize Parallelism for Stencil Computations
    Bondhugula, Uday
    Bandishti, Vinayaka
    Pananilath, Irshad
    IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS, 2017, 28 (05) : 1285 - 1298
  • [6] An Empirical Study of Code Smells in Transformer-based Code Generation Techniques
    Siddiq, Mohammed Latif
    Majumder, Shafayat H.
    Mim, Maisha R.
    Jajodia, Sourov
    Santos, Joanna C. S.
    2022 IEEE 22ND INTERNATIONAL WORKING CONFERENCE ON SOURCE CODE ANALYSIS AND MANIPULATION (SCAM 2022), 2022, : 71 - 82
  • [7] Knight: Optimizing Code Generation for Simulink Models With Loop Reshaping
    Yu, Zehong
    Yang, Yixiao
    Su, Zhuo
    Wang, Rui
    Tao, Yang
    Jiang, Yu
    IEEE TRANSACTIONS ON COMPUTER-AIDED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS, 2025, 44 (02) : 444 - 457
  • [8] PARALLEL TILED CODE GENERATION WITH LOOP PERMUTATION WITHIN TILES
    Palkowski, Marek
    Bielecki, Wlodzimierz
    COMPUTING AND INFORMATICS, 2017, 36 (06) : 1261 - 1282
  • [9] Code Generation in Computational Neuroscience: A Review of Tools and Techniques
    Blundell, Inga
    Brette, Romain
    Cleland, Thomas A.
    Close, Thomas G.
    Coca, Daniel
    Davison, Andrew P.
    Diaz-Pier, Sandra
    Musoles, Carlos Fernandez
    Gleeson, Padraig
    Goodman, Dan F. M.
    Hines, Michael
    Hopkins, Michael W.
    Kumbhar, Pramod
    Lester, David R.
    Marin, Boris
    Morrison, Abigail
    Mueller, Eric
    Nowotny, Thomas
    Peyser, Alexander
    Plotnikov, Dimitri
    Richmond, Paul
    Rowley, Andrew
    Rumpe, Bernhard
    Stimberg, Marcel
    Stokes, Alan B.
    Tomkins, Adam
    Trensch, Guido
    Woodman, Marmaduke
    Eppler, Jochen Martin
    FRONTIERS IN NEUROINFORMATICS, 2018, 12
  • [10] Loop Nest Tiling for Image Processing and Communication Applications
    Bielecki, Wlodzimierz
    Palkowski, Marek
    HARD AND SOFT COMPUTING FOR ARTIFICIAL INTELLIGENCE, MULTIMEDIA AND SECURITY, 2017, 534 : 305 - 314