• DocumentCode
    2241534
  • Title

    Minimal Multi-threading: Finding and Removing Redundant Instructions in Multi-threaded Processors

  • Author

    Long, Guoping ; Franklin, Diana ; Biswas, Susmit ; Ortiz, Pablo ; Oberg, Jason ; Fan, Dongrui ; Chong, Frederic T.

  • Author_Institution
    Inst. of Comput. Technol., Chinese Acad. of Sci., Beijing, China
  • fYear
    2010
  • fDate
    4-8 Dec. 2010
  • Firstpage
    337
  • Lastpage
    348
  • Abstract
    Parallelism is the key to continued performance scaling in modern microprocessors. Yet we observe that this parallelism can often contain a surprising amount of instruction redundancy. We propose to exploit this redundancy to improve performance and decrease energy consumption. We propose a multi-threading micro-architecture, Minimal Multi-Threading (MMT), that leverages register renaming and the instruction window to combine the fetch and execution of identical instructions between threads in SPMD applications. While many techniques exploit intra-thread similarities by detecting when a later instruction may use an earlier result, MMT exploits inter-thread similarities by, whenever possible, fetching instructions from different threads together and only splitting them if the computation is unique. With two threads, our design achieves a speedup of 1.15 (geometric mean) over a two-thread traditional SMT with a trace cache. With four threads, our design achieves a speedup of 1.25 (geometric mean) over a traditional SMT processor with four-threads and a trace cache. These correspond to speedups of 1.5 and 1.84 over a traditional out-of-order processor. Moreover, our performance increases in most applications with no power increase because the increase in overhead is countered with a decrease in cache accesses, leading to a decrease in energy consumption for all applications.
  • Keywords
    multi-threading; parallel architectures; program processors; redundancy; SMT processor; SPMD application; instruction window; intrathread similarity; minimal multithreading; multithreaded processor; multithreading microarchitecture; performance scaling; redundant instruction; trace cache; Instruction Redundancy; Parallel Processing; SMT;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Microarchitecture (MICRO), 2010 43rd Annual IEEE/ACM International Symposium on
  • Conference_Location
    Atlanta, GA
  • ISSN
    1072-4451
  • Print_ISBN
    978-1-4244-9071-4
  • Type

    conf

  • DOI
    10.1109/MICRO.2010.41
  • Filename
    5695548