D. Volpato, Alexandre K. I. Mendonça, L. Santos, José Luís Almada Güntzel
{"title":"利用代码粒度在scratchpad提高能源效率的后编译方法","authors":"D. Volpato, Alexandre K. I. Mendonça, L. Santos, José Luís Almada Güntzel","doi":"10.1109/ISVLSI.2010.66","DOIUrl":null,"url":null,"abstract":"Since most of the energy spent in embedded processors is consumed when accessing instruction and data caches, scratchpad memories (SPMs) are promising for energy efficiency, because they require less energy per access than caches do. Most SPM mapping techniques require the availability of source code and are therefore unable to treat third-party software. This work handles precompiled software while simultaneously mapping code and data elements into SPMs. It evaluates energy savings for code elements defined either by procedure or basic block (BB) boundaries. For a subset of the MiBench program suite, the experimental results show that the adoption of BB boundaries leads to average energy savings of 30% for a 1KB SPM, which are 10% better than when procedure boundaries are considered. For procedure boundaries to achieve average energy savings comparable to those obtained with BBs, SPM size must be increased to 4KB, resulting in a 31% area overhead in the memory subsystem. Higher savings, on the order of 40%, were achieved for real-life use cases exhibiting BBs with high profit/cost ratios. This work also shows that, when exploiting the finer-grain BB boundaries to achieve higher savings, relocatable object files are the most efficient binary media (average patching time is 2.05 seconds), despite the higher number of resulting code elements (mapping takes at most 10 ms).","PeriodicalId":187530,"journal":{"name":"2010 IEEE Computer Society Annual Symposium on VLSI","volume":"192 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2010-07-05","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"7","resultStr":"{\"title\":\"A Post-compiling Approach that Exploits Code Granularity in Scratchpads to Improve Energy Efficiency\",\"authors\":\"D. Volpato, Alexandre K. I. Mendonça, L. Santos, José Luís Almada Güntzel\",\"doi\":\"10.1109/ISVLSI.2010.66\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"Since most of the energy spent in embedded processors is consumed when accessing instruction and data caches, scratchpad memories (SPMs) are promising for energy efficiency, because they require less energy per access than caches do. Most SPM mapping techniques require the availability of source code and are therefore unable to treat third-party software. This work handles precompiled software while simultaneously mapping code and data elements into SPMs. It evaluates energy savings for code elements defined either by procedure or basic block (BB) boundaries. For a subset of the MiBench program suite, the experimental results show that the adoption of BB boundaries leads to average energy savings of 30% for a 1KB SPM, which are 10% better than when procedure boundaries are considered. For procedure boundaries to achieve average energy savings comparable to those obtained with BBs, SPM size must be increased to 4KB, resulting in a 31% area overhead in the memory subsystem. Higher savings, on the order of 40%, were achieved for real-life use cases exhibiting BBs with high profit/cost ratios. This work also shows that, when exploiting the finer-grain BB boundaries to achieve higher savings, relocatable object files are the most efficient binary media (average patching time is 2.05 seconds), despite the higher number of resulting code elements (mapping takes at most 10 ms).\",\"PeriodicalId\":187530,\"journal\":{\"name\":\"2010 IEEE Computer Society Annual Symposium on VLSI\",\"volume\":\"192 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2010-07-05\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"7\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"2010 IEEE Computer Society Annual Symposium on VLSI\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1109/ISVLSI.2010.66\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"2010 IEEE Computer Society Annual Symposium on VLSI","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/ISVLSI.2010.66","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
A Post-compiling Approach that Exploits Code Granularity in Scratchpads to Improve Energy Efficiency
Since most of the energy spent in embedded processors is consumed when accessing instruction and data caches, scratchpad memories (SPMs) are promising for energy efficiency, because they require less energy per access than caches do. Most SPM mapping techniques require the availability of source code and are therefore unable to treat third-party software. This work handles precompiled software while simultaneously mapping code and data elements into SPMs. It evaluates energy savings for code elements defined either by procedure or basic block (BB) boundaries. For a subset of the MiBench program suite, the experimental results show that the adoption of BB boundaries leads to average energy savings of 30% for a 1KB SPM, which are 10% better than when procedure boundaries are considered. For procedure boundaries to achieve average energy savings comparable to those obtained with BBs, SPM size must be increased to 4KB, resulting in a 31% area overhead in the memory subsystem. Higher savings, on the order of 40%, were achieved for real-life use cases exhibiting BBs with high profit/cost ratios. This work also shows that, when exploiting the finer-grain BB boundaries to achieve higher savings, relocatable object files are the most efficient binary media (average patching time is 2.05 seconds), despite the higher number of resulting code elements (mapping takes at most 10 ms).