{"title":"Software acceleration using coprocessors: is it worth the effort?","authors":"M. Edwards","doi":"10.1109/HSC.1997.584592","DOIUrl":null,"url":null,"abstract":"A commonly accepted technique in hardware/software co-design is to implement as many system functions as possible in software and to move performance-critical functions into special-purpose external hardware in order to either satisfy timing constraints or reduce the overall execution time of a program-this is known as \"software acceleration\". This paper investigates the limits to the performance enhancements obtainable using software acceleration techniques. A practical target architecture, based on the use of programmable logic, is used to illustrate the problems associated with software acceleration. It is shown that, normally, little benefit can be obtained by applying software acceleration methods to general-purpose applications. Whereas software acceleration can profitably be used in a limited number of special-purpose applications, a designer would probably be better off developing ASIP (application-specific instruction-set processor) components, based on heterogeneous multiprocessor architectures.","PeriodicalId":104833,"journal":{"name":"Proceedings of 5th International Workshop on Hardware/Software Co Design. Codes/CASHE '97","volume":"157 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"1997-03-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"11","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings of 5th International Workshop on Hardware/Software Co Design. Codes/CASHE '97","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/HSC.1997.584592","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 11
Abstract
A commonly accepted technique in hardware/software co-design is to implement as many system functions as possible in software and to move performance-critical functions into special-purpose external hardware in order to either satisfy timing constraints or reduce the overall execution time of a program-this is known as "software acceleration". This paper investigates the limits to the performance enhancements obtainable using software acceleration techniques. A practical target architecture, based on the use of programmable logic, is used to illustrate the problems associated with software acceleration. It is shown that, normally, little benefit can be obtained by applying software acceleration methods to general-purpose applications. Whereas software acceleration can profitably be used in a limited number of special-purpose applications, a designer would probably be better off developing ASIP (application-specific instruction-set processor) components, based on heterogeneous multiprocessor architectures.