{"title":"Limitation of branch predictors: a case for multithreaded architectures","authors":"P. Golla, E. C. Lin","doi":"10.1109/SECON.1998.673312","DOIUrl":null,"url":null,"abstract":"Conventional scalar architectures such as the superscalar or multiscalar architectures execute 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 but none of them can provide 100% accuracy. 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.","PeriodicalId":281991,"journal":{"name":"Proceedings IEEE Southeastcon '98 'Engineering for a New Era'","volume":"11 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"1998-04-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings IEEE Southeastcon '98 'Engineering for a New Era'","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/SECON.1998.673312","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0
Abstract
Conventional scalar architectures such as the superscalar or multiscalar architectures execute 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 but none of them can provide 100% accuracy. 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.