Supporting Speculative Multithreading on Simultaneous Multithreaded Processors
Venkatesan Packirisamy, Shengyue Wang, Antonia Zhai, Wei‐Chung Hsu, Pen-Chung Yew
Abstract
Venkatesan Packirisamy, Shengyue Wang, Antonia Zhai, Wei‐Chung Hsu, Pen-Chung Yew
Abstract
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. 1
OpenAlex reports 4 citations for this work. Citation counts describe recorded attention and do not establish research quality.
A contribution statement is not available in the OpenAlex record.
Method details are not available in the OpenAlex metadata.
Findings are not separately available in the OpenAlex metadata.
Limitations are not available in the OpenAlex metadata.
Application details are not available in the OpenAlex metadata.
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. 1
Key concepts: Multithreading, Computer science, Speculative multithreading, Thread (computing), Parallel computing, Speedup, Simultaneous multithreading, Cache