{"title":"分支预测器的限制:多线程架构的一个案例","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":"{\"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}","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}
Limitation of branch predictors: a case for multithreaded architectures
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.