Compiler Optimizations for Code Density of Variable Length Instructions

被引:0
|
作者
Kultala, Heikki [1 ]
Viitanen, Timo [1 ]
Jaaskelainen, Pekka [1 ]
Helkala, Janne [1 ]
Takala, Jarmo [1 ]
机构
[1] Tampere Univ Technol, Dept Pervas Comp, Tampere, Finland
基金
芬兰科学院;
关键词
D O I
暂无
中图分类号
TM [电工技术]; TN [电子技术、通信技术];
学科分类号
0808 ; 0809 ;
摘要
Variable length encoding can considerably decrease code size in VLIW processors by decreasing the amount of bits wasted on encoding No Operation(NOP)s. A processor may have different instruction templates where different execution slots are implicitly NOPs, but all combinations of NOPs may not be supported by the instruction templates. The efficiency of the NOP encoding can be improved by the compiler trying to place NOPs in such way that the usage of implicit NOPs is maximized Two different methods of optimizing the use of the implicit NOP slots are evaluated: prioritizing function units that have fewer implicit NOPs associated to them, and a post-pass to the instruction scheduler which utilizes the slack of the schedule by rescheduling operations with slack into different instruction words so that the available instruction templates are better utilized. The postpass optimizer saved an average of 2.5 % and at best of 9.1 % instruction memory, without performance loss. Prioritizing function units gave best case instruction memory savings of 12.7 % but the average savings were only 1.0 % and there was in average 5.7 % slowdown for the program.
引用
收藏
页码:127 / 132
页数:6
相关论文
共 50 条
  • [21] Detection of Optimizations Missed by the Compiler
    Zhang, Yi
    [J]. PROCEEDINGS OF THE 31ST ACM JOINT MEETING EUROPEAN SOFTWARE ENGINEERING CONFERENCE AND SYMPOSIUM ON THE FOUNDATIONS OF SOFTWARE ENGINEERING, ESEC/FSE 2023, 2023, : 2192 - 2194
  • [22] ADVANCED COMPILER OPTIMIZATIONS FOR SUPERCOMPUTERS
    PADUA, DA
    WOLFE, MJ
    [J]. COMMUNICATIONS OF THE ACM, 1986, 29 (12) : 1184 - 1201
  • [23] Understanding the behavior of compiler optimizations
    Lee, Han
    von Dincklage, Daniel
    Diwan, Amer
    Moss, J. Eliot B.
    [J]. SOFTWARE-PRACTICE & EXPERIENCE, 2006, 36 (08): : 835 - 844
  • [24] Compiler Optimizations for Parallel Programs
    Doerfert, Johannes
    Finkel, Hal
    [J]. LANGUAGES AND COMPILERS FOR PARALLEL COMPUTING (LCPC 2018), 2019, 11882 : 112 - 119
  • [25] DSP C compiler raises the bar in code density
    Bindra, A
    [J]. ELECTRONIC DESIGN, 2001, 49 (20) : 28 - 28
  • [26] Not So Fast: Understanding and Mitigating Negative Impacts of Compiler Optimizations on Code Reuse Gadget Sets
    Brown, Michael D.
    Pruett, Matthew
    Bigelow, Robert
    Mururu, Girish
    Pande, Santosh
    [J]. PROCEEDINGS OF THE ACM ON PROGRAMMING LANGUAGES-PACMPL, 2021, 5 (OOPSLA):
  • [27] A SIMPLE VARIABLE-LENGTH CODE
    GOLIN, SJ
    [J]. SIGNAL PROCESSING, 1995, 45 (01) : 23 - 35
  • [28] CODE STCUCTURES FOR VARIABLE LENGTH OPERATIONS
    RAMAMOORTHY, CV
    [J]. SIAM REVIEW, 1963, 5 (01) : 94 - &
  • [29] Compiler optimizations to reduce security overhead
    Zhang, Tao
    Zhuang, Xiaotong
    Pande, Santosh
    [J]. CGO 2006: 4TH INTERNATIONAL SYMPOSIUM ON CODE GENERATION AND OPTIMIZATION, 2006, : 346 - +
  • [30] Weakest Precondition Synthesis for Compiler Optimizations
    Lopes, Nuno P.
    Monteiro, Jose
    [J]. VERIFICATION, MODEL CHECKING, AND ABSTRACT INTERPRETATION: (VMCAI 2014), 2014, 8318 : 203 - 221