A comparison of the effect of branch prediction on multithreaded and scalar architectures
- 1 September 1998
- journal article
- Published by Association for Computing Machinery (ACM) in ACM SIGARCH Computer Architecture News
- Vol. 26 (4) , 3-11
- https://doi.org/10.1145/1216475.1216476
Abstract
Speculative instructions execution requires dynamic branch predictors to increase the performance of a processor by executing from predicted branch target routines. Conventional Scalar architectures such as the Superscalar or Multiscalar architecture executes from a single stream, while a Multithreaded architecture executes from multiple streams at a time. Several aggressive branch predictors have been proposed with high prediction accuracies. Unfortunately, none of the branch predictors can provide 100% accuracy. Therefore, there is an inherent limitation on speculative execution in real implementation. In this paper, we show that Multithreaded architecture is a better candidate for utilizing speculative execution than Scalar architectures. Generally the branch prediction performance degradation is compounded for larger window sizes on Scalar architectures, while for a Multithreaded architecture, by increasing the number of executing threads, we could sustain a higher performance for a large aggregated speculative window size. Hence, heavier workloads may increase performance and utilization for Multithreaded architectures. We present analytical and simulation results to support our argument.Keywords
This publication has 9 references indexed in Scilit:
- How multimedia workloads will change processor designComputer, 1997
- Evaluation of multithreaded uniprocessors for commercial application environmentsPublished by Association for Computing Machinery (ACM) ,1996
- Simultaneous multithreadingACM SIGARCH Computer Architecture News, 1995
- The MIT Alewife machinePublished by Association for Computing Machinery (ACM) ,1995
- A comparison of dynamic branch predictors that use two levels of branch historyPublished by Association for Computing Machinery (ACM) ,1993
- Improving the accuracy of dynamic branch prediction using branch correlationPublished by Association for Computing Machinery (ACM) ,1992
- Two-level adaptive training branch predictionPublished by Association for Computing Machinery (ACM) ,1991
- The Tera computer systemPublished by Association for Computing Machinery (ACM) ,1990
- Limits on multiple instruction issuePublished by Association for Computing Machinery (ACM) ,1989