• DocumentCode
    3438950
  • Title

    Run-time versus compile-time instruction scheduling in superscalar (RISC) processors: performance and tradeoffs

  • Author

    Leung, Allen ; Palem, Krishna V. ; Ungureanu, Cristian

  • Author_Institution
    Courant Inst. of Math. Sci., New York Univ., NY, USA
  • fYear
    1996
  • fDate
    19-22 Dec 1996
  • Firstpage
    215
  • Lastpage
    224
  • Abstract
    The RISC revolution has spurred the development of processors with increasing degrees of instruction level parallelism (ILP). In order to realize the full potential of these processors, multiple instructions must continuously be issued and executed in a single cycle. Consequently, instruction scheduling plays a crucial role as an optimization in this context. While early attempts at instruction scheduling were limited to compile-time approaches, the current trends are aimed at providing dynamic support in hardware. In this paper, we present the results of a detailed comparative study of the performance advantages to be derived by the spectrum of instruction scheduling approaches: from limited basic-block schedulers in the compiler, to novel and aggressive schedulers in hardware. A significant portion of our experimental study via simulations, is devoted to understanding the performance advantages of run-time scheduling. Our results indicate it to be effective in extracting the ILP inherent to the program trace being scheduled, over a wide range of machine and program parameters. Furthermore, we also show that this effectiveness can be further enhanced by a simple basic-block scheduler in the compiler, which optimizes for the presence of the run-time scheduler in the target; current basic-block schedulers are not designed to take advantage of this feature. We demonstrate this fact by presenting a novel basic-block scheduling algorithm that is sensitive to the lookahead hardware in the target processor
  • Keywords
    computer architecture; processor scheduling; reduced instruction set computing; RISC processors; basic-block scheduling; compile-time instruction scheduling; instruction scheduling; lookahead hardware; program trace; run-time instruction scheduling; superscalar processors; target processor; Design optimization; Dynamic scheduling; Hardware; Optimizing compilers; Performance gain; Process design; Processor scheduling; Reduced instruction set computing; Runtime;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    High Performance Computing, 1996. Proceedings. 3rd International Conference on
  • Conference_Location
    Trivandrum
  • Print_ISBN
    0-8186-7557-8
  • Type

    conf

  • DOI
    10.1109/HIPC.1996.565826
  • Filename
    565826