Polyhedral code generation in the real world

被引:0
|
作者
Vasilache, Nicolas [1 ]
Bastoul, Cedric
Cohen, Albert
机构
[1] Univ Paris 11, ALCHEMY Grp, INRIA Futurs, Paris, France
[2] Univ Paris 11, LRI, Paris, France
来源
关键词
D O I
暂无
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
The polyhedral model is known to be a powerful framework to reason about high level loop transformations. Recent developments in optimizing compilers broke some generally accepted ideas about the limitations of this model. First, thanks to advances in dependence analysis for irregular access patterns, its applicability which was supposed to be limited to very simple loop nests has been extended to wide code regions. Then, new algorithms made it possible to compute the target code for hundreds of statements while this code generation step was expected not to be scalable. Such theoretical advances and new software tools allowed actors from both academia and industry to study more complex and realistic cases. Unfortunately, despite strong optimization potential of a given transformation for e.g., parallelism or data locality, code generation may still be challenging or result in high control overhead. This paper presents scalable code generation methods that make possible the application of increasingly complex program transformations. By studying the transformations themselves, we show how it is possible to benefit from their properties to dramatically improve both code generation quality and space/time complexity, with respect to the best state-of-the-art code generation tool. In addition, we build on these improvements to present a new algorithm improving generated code performance for strided domains and reindexed schedules.
引用
收藏
页码:185 / 201
页数:17
相关论文
共 50 条
  • [1] Verified Code Generation for the Polyhedral Model
    Courant, Nathanael
    Leroy, Xavier
    [J]. PROCEEDINGS OF THE ACM ON PROGRAMMING LANGUAGES-PACMPL, 2021, 5 (POPL):
  • [2] Polyhedral Parallel Code Generation for CUDA
    Verdoolaege, Sven
    Carlos Juega, Juan
    Cohen, Albert
    Ignacio Gomez, Jose
    Tenllado, Christian
    Catthoor, Francky
    [J]. ACM TRANSACTIONS ON ARCHITECTURE AND CODE OPTIMIZATION, 2013, 9 (04)
  • [3] An approach for code generation in the Sparse Polyhedral Framework
    Strout, Michelle Mills
    LaMielle, Alan
    Carter, Larry
    Ferrante, Jeanne
    Kreaseck, Barbara
    Olschanowsky, Catherine
    [J]. PARALLEL COMPUTING, 2016, 53 : 32 - 57
  • [4] When Polyhedral Transformations Meet SIMD Code Generation
    Kong, Martin
    Veras, Richard
    Stock, Kevin
    Franchetti, Franz
    Pouchet, Louis-Noel
    Sadayappan, P.
    [J]. ACM SIGPLAN NOTICES, 2013, 48 (06) : 127 - 138
  • [5] Code Bones: Fast and Flexible Code Generation for Dynamic and Speculative Polyhedral Optimization
    Caamano, Juan Manuel Martinez
    Wolff, Willy
    Clauss, Philippe
    [J]. EURO-PAR 2016: PARALLEL PROCESSING, 2016, 9833 : 225 - 237
  • [6] 'Ideal code, real world'
    McIntyre, A
    [J]. NOUS, 2005, : 252 - 263
  • [7] 'Ideal code, real world'
    Arneson, R
    [J]. NOUS, 2005, : 235 - 251
  • [8] Code generation in the polyhedral model is easier than you think
    Bastoul, C
    [J]. 13TH INTERNATIONAL CONFERENCE ON PARALLEL ARCHITECTURE AND COMPILATION TECHNIQUES, PROCEEDINGS, 2004, : 7 - 16
  • [9] Ideal code, real world.
    Harris, GW
    [J]. ETHICS, 2003, 113 (04) : 882 - 885
  • [10] Polyhedral Specification and Code Generation of Sparse Tensor Contraction with Co-iteration
    Zhao, Tuowen
    Popoola, Tobi
    Hall, Mary
    Olschanowsky, Catherine
    Strout, Michelle
    [J]. ACM TRANSACTIONS ON ARCHITECTURE AND CODE OPTIMIZATION, 2022, 20 (01)