A code generation algorithm for affine partitioning framework

被引:0
|
作者
Liao, SW [1 ]
Du, ZH [1 ]
Wu, GS [1 ]
Lueh, GY [1 ]
机构
[1] Intel Corp, Microproc Technol Labs, Santa Clara, CA 95054 USA
关键词
D O I
暂无
中图分类号
TP18 [人工智能理论];
学科分类号
081104 ; 0812 ; 0835 ; 1405 ;
摘要
Multiprocessors are about to become prevalent in the PC world. Major CPU vendors such as Intel and Advanced Micro Devices have recently announced their imminent migration to multicore processors. Affine partitioning; provides a systematic framework to find asymptotically optimal computation and data decomposition for multiprocessors, including multicore processors. This affine framework uniformly models a large class of high-level optimizations such as loop interchange, reversal, skewing, fusion, fission, re-indexing, scaling, and statement reordering. However, the resulting code after applying affine transformations tends to contain more loop levels and complex conditional expressions. This impacts performance, code readability and debuggability for both programmers and compiler developers. To facilitate the adoption of affine partitioning in industry, we address the above practical issues by proposing a salient two-step algorithm: coalesce and optimize. The coalescing algorithm maintains valid code throughout and improves readability and debuggability. We demonstrate with examples that the optimization algorithm simplifies the resulting loop structures, conditional expressions and array access functions and generates efficient code.
引用
收藏
页码:17 / 21
页数:5
相关论文
共 50 条
  • [1] Communication code generation in systems of affine recurrence equations
    Reffay, C
    Perrin, GR
    [J]. INTEGRATION-THE VLSI JOURNAL, 1995, 20 (01) : 63 - 83
  • [2] Parametric GPU Code Generation for Affine Loop Programs
    Konstantinidis, Athanasios
    Kelly, Paul H. J.
    Ramanujam, J.
    Sadayappan, P.
    [J]. LANGUAGES AND COMPILERS FOR PARALLEL COMPUTING, LCPC 2013, 2014, 8664 : 136 - 151
  • [3] Integrating a new cluster assignment and scheduling algorithm into an experimental retargetable code generation framework
    Lakshmi, KV
    Sreedhar, D
    Raman, E
    Shankar, P
    [J]. HIGH PERFORMANCE COMPUTING - HIPC 2005, PROCEEDINGS, 2005, 3769 : 518 - 527
  • [4] Code Generation Framework for Grid Development
    JIANG Ling-yun1
    2.State Key Laboratory for Novel Software Technology
    [J]. The Journal of China Universities of Posts and Telecommunications, 2006, (02) : 39 - 42
  • [5] Modeling and Code Generation Framework for IoT
    Sharaf, Mohammad
    Abusair, Mai
    Eleiwi, Rami
    Shana'a, Yara
    Saleh, Ithar
    Muccini, Henry
    [J]. SYSTEM ANALYSIS AND MODELING: LANGUAGES, METHODS, AND TOOLS FOR INDUSTRY 4.0, SAM 2019, 2019, 11753 : 99 - 115
  • [6] An agile and extensible code generation framework
    Kolovos, DS
    Paige, RF
    Polack, FAC
    [J]. EXTREME PROGRAMMING AND AGILE PROCESSES IN SOFTWARE ENGINEERING, PROCEEDINGS, 2005, 3556 : 226 - 229
  • [7] Framework for model transformation and code generation
    Oldevik, J
    Solberg, A
    Elvesæter, B
    Berre, AJ
    [J]. SIXTH INTERNATIONAL ENTERPRISE DISTRIBUTED OBJECT COMPUTING CONFERENCE, PROCEEDINGS, 2002, : 181 - 189
  • [8] Automatic C-to-CUDA Code Generation for Affine Programs
    Baskaran, Muthu Manikandan
    Ramanujam, J.
    Sadayappan, P.
    [J]. COMPILER CONSTRUCTION, PROCEEDINGS, 2010, 6011 : 244 - +
  • [9] HEURISTIC ALGORITHM FOR THE PIN CODE GENERATION
    Grondzak, Karol
    Kortis, Peter
    [J]. INTERNATIONAL JOURNAL ON INFORMATION TECHNOLOGIES AND SECURITY, 2010, 2 (01): : 53 - 58
  • [10] Serialized Parallel Code Generation Framework for MPSoC
    Kwon, Seongnam
    Ha, Soonhoi
    [J]. ACM TRANSACTIONS ON DESIGN AUTOMATION OF ELECTRONIC SYSTEMS, 2010, 15 (02)