Supporting speculative multithreading on simultaneous multithreaded processors

  • Authors:
  • Venkatesan Packirisamy;Shengyue Wang;Antonia Zhai;Wei-Chung Hsu;Pen-Chung Yew

  • Affiliations:
  • Department of Computer Science, University of Minnesota, Minneapolis;Department of Computer Science, University of Minnesota, Minneapolis;Department of Computer Science, University of Minnesota, Minneapolis;Department of Computer Science, University of Minnesota, Minneapolis;Department of Computer Science, University of Minnesota, Minneapolis

  • Venue:
  • HiPC'06 Proceedings of the 13th international conference on High Performance Computing
  • Year:
  • 2006

Quantified Score

Hi-index 0.00

Visualization

Abstract

Speculative multithreading is a technique that has been used to improve single thread performance. Speculative multithreading architectures for Chip multiprocessors (CMPs) have been extensively studied. But there have been relatively few studies on the design of speculative multithreading for simultaneous multithreading (SMT) processors. The current SMT based designs – IMT [9] and DMT [2] use load/store queue (LSQ) to perform dependence checking. Since the size of the LSQ is limited, this design is suitable only for small threads. In this paper we present a novel cache-based architecture support for speculative simultaneous multithreading which can efficiently handle larger threads. In our architecture, the associativity in the cache is used to buffer speculative values. Our 4-thread architecture can achieve about 15% speedup when compared to the equivalent superscalar processors and about 3% speedup on the average over the LSQ-based architectures, however, with a less complex hardware. Also our scheme can perform 14% better than the LSQ-based scheme for larger threads.