{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,6,19]],"date-time":"2025-06-19T04:52:34Z","timestamp":1750308754830,"version":"3.41.0"},"reference-count":43,"publisher":"Association for Computing Machinery (ACM)","issue":"4","license":[{"start":{"date-parts":[[2009,7,1]],"date-time":"2009-07-01T00:00:00Z","timestamp":1246406400000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["ACM Trans. Embed. Comput. Syst."],"published-print":{"date-parts":[[2009,7]]},"abstract":"<jats:p>The demand for flexible embedded solutions and short time-to-market has led to the development of extensible processors that allow for customization through user-defined instruction set extensions (ISEs). These are usually identified from plain C sources. In this article, we propose a combined exploration of code transformations and ISE identification. The resulting performance of such a combination has been measured on two benchmark suites. Our results demonstrate that combined code transformations and ISEs can yield average performance improvements of 49%. This outperforms ISEs when applied in isolation, and in extreme cases yields a speed-up of 2.85.<\/jats:p>","DOI":"10.1145\/1550987.1550989","type":"journal-article","created":{"date-parts":[[2009,7,28]],"date-time":"2009-07-28T12:43:55Z","timestamp":1248785035000},"page":"1-31","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":8,"title":["Code transformation and instruction set extension"],"prefix":"10.1145","volume":"8","author":[{"given":"Alastair C.","family":"Murray","sequence":"first","affiliation":[{"name":"University of Edinburgh, Scotland, United Kingdom"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Richard V.","family":"Bennett","sequence":"additional","affiliation":[{"name":"University of Edinburgh, Scotland, United Kingdom"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Bj\u00f6rn","family":"Franke","sequence":"additional","affiliation":[{"name":"University of Edinburgh, Scotland, United Kingdom"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Nigel","family":"Topham","sequence":"additional","affiliation":[{"name":"University of Edinburgh, Scotland, United Kingdom"}],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"320","published-online":{"date-parts":[[2009,7,24]]},"reference":[{"key":"e_1_2_1_1_1","unstructured":"ACE Associated Compiler Experts b.v. 2008. ACE CoSy Web site. http:\/\/www.ace.nl\/compiler\/cosy.html.  ACE Associated Compiler Experts b.v. 2008. ACE CoSy Web site. http:\/\/www.ace.nl\/compiler\/cosy.html."},{"key":"e_1_2_1_2_1","doi-asserted-by":"publisher","DOI":"10.1109\/CGO.2006.37"},{"key":"e_1_2_1_3_1","unstructured":"ARC International. 2007a. ARC FPX White paper.  ARC International. 2007a. ARC FPX White paper."},{"key":"e_1_2_1_4_1","unstructured":"ARC International. 2007b. ARChitect product brief.  ARC International. 2007b. ARChitect product brief."},{"key":"e_1_2_1_5_1","doi-asserted-by":"publisher","DOI":"10.1145\/1084834.1084880"},{"key":"e_1_2_1_6_1","doi-asserted-by":"publisher","DOI":"10.1109\/MC.2003.1193228"},{"key":"e_1_2_1_7_1","unstructured":"Berkelaar M. 2008. Mixed integer programming (MIP) solver. http:\/\/groups.yahoo.com\/group\/lp_solve\/.  Berkelaar M. 2008. Mixed integer programming (MIP) solver. http:\/\/groups.yahoo.com\/group\/lp_solve\/."},{"key":"e_1_2_1_8_1","doi-asserted-by":"publisher","DOI":"10.1109\/TVLSI.2006.878345"},{"key":"e_1_2_1_9_1","doi-asserted-by":"publisher","DOI":"10.1145\/1176760.1176791"},{"key":"e_1_2_1_10_1","doi-asserted-by":"publisher","DOI":"10.1145\/1144366.1144369"},{"volume-title":"Proceedings of the SIAM Conference on Object Oriented Methods for Scientific Computing. SIAM","author":"Brown D.","key":"e_1_2_1_11_1","unstructured":"Brown , D. , Henshaw , W. D. , and Quinlan , D. J . 1999. Overture: An object-oriented framework for solving partial differential equations on overlapping grids . In Proceedings of the SIAM Conference on Object Oriented Methods for Scientific Computing. SIAM , Philadelphia. Brown, D., Henshaw, W. D., and Quinlan, D. J. 1999. Overture: An object-oriented framework for solving partial differential equations on overlapping grids. In Proceedings of the SIAM Conference on Object Oriented Methods for Scientific Computing. SIAM, Philadelphia."},{"volume-title":"Proceedings of the 2nd Workshop on Feedback Directed Optimization. ACM","author":"Chow K.","key":"e_1_2_1_12_1","unstructured":"Chow , K. and Wu , Y . 1999. Feedback-directed selection and characterization of compiler optimizations . In Proceedings of the 2nd Workshop on Feedback Directed Optimization. ACM , New York. Chow, K. and Wu, Y. 1999. Feedback-directed selection and characterization of compiler optimizations. In Proceedings of the 2nd Workshop on Feedback Directed Optimization. ACM, New York."},{"volume-title":"Proceedings of the International Workshop on Compilers and Operating Systems for Low-Power. ACM","author":"Chung E.","key":"e_1_2_1_13_1","unstructured":"Chung , E. , Benini , L. , and Micheli , G. D . 2000. Energy efficient source code transformation based on value profiling . In Proceedings of the International Workshop on Compilers and Operating Systems for Low-Power. ACM , New York. Chung, E., Benini, L., and Micheli, G. D. 2000. Energy efficient source code transformation based on value profiling. In Proceedings of the International Workshop on Compilers and Operating Systems for Low-Power. ACM, New York."},{"key":"e_1_2_1_14_1","unstructured":"Coware. 2007. Processor designer datasheet. http:\/\/www.coware.com\/PDF\/products\/LISATek.pdf.  Coware. 2007. Processor designer datasheet. http:\/\/www.coware.com\/PDF\/products\/LISATek.pdf."},{"key":"e_1_2_1_15_1","doi-asserted-by":"crossref","unstructured":"Falk H. and Marwedel P. 2004. Source Code Optimization Techniques for Data Flow Dominated Embedded Software. Kluwer Academic Publishers Dordrecht The Netherlands.  Falk H. and Marwedel P. 2004. Source Code Optimization Techniques for Data Flow Dominated Embedded Software. Kluwer Academic Publishers Dordrecht The Netherlands.","DOI":"10.1007\/978-1-4020-2829-8"},{"key":"e_1_2_1_16_1","unstructured":"Francis H. 2001. ARM DSP-enhanced extensions.  Francis H. 2001. ARM DSP-enhanced extensions."},{"key":"e_1_2_1_17_1","doi-asserted-by":"publisher","DOI":"10.1145\/643470.643472"},{"key":"e_1_2_1_18_1","doi-asserted-by":"publisher","DOI":"10.5555\/942806.943849"},{"key":"e_1_2_1_19_1","doi-asserted-by":"publisher","DOI":"10.1145\/1065910.1065922"},{"key":"e_1_2_1_20_1","doi-asserted-by":"publisher","DOI":"10.1023\/A:1022167611720"},{"key":"e_1_2_1_21_1","doi-asserted-by":"publisher","DOI":"10.5555\/647475.727623"},{"key":"e_1_2_1_22_1","unstructured":"Hohenauer M. Scharwaechter H. Karuri K. Wahlen O. Kogel T. Leupers R. Ascheid G. and Meyr H. 2004. Compiler-in-loop architecture exploration for efficient application specific embedded processor design. http:\/\/www.iss.rwth-aachen.de\/4_publikationen\/res_pdf\/2004HohenauerDE.pdf.  Hohenauer M. Scharwaechter H. Karuri K. Wahlen O. Kogel T. Leupers R. Ascheid G. and Meyr H. 2004. Compiler-in-loop architecture exploration for efficient application specific embedded processor design. http:\/\/www.iss.rwth-aachen.de\/4_publikationen\/res_pdf\/2004HohenauerDE.pdf."},{"key":"e_1_2_1_23_1","unstructured":"Intel. 2007. Intel PXA270 processor for embedded computing. http:\/\/www.intel.com\/design\/embeddedpca\/applicationsprocessors\/302302.htm.  Intel. 2007. Intel PXA270 processor for embedded computing. http:\/\/www.intel.com\/design\/embeddedpca\/applicationsprocessors\/302302.htm."},{"key":"e_1_2_1_24_1","doi-asserted-by":"publisher","DOI":"10.1109\/43.898830"},{"volume-title":"Proceedings of the 12th International Parallel Processing Symposium. IEEE, Los Alamitos, 292--297","author":"Kulkarni C.","key":"e_1_2_1_25_1","unstructured":"Kulkarni , C. , Catthoor , F. , and Man , H. D . 1998. Code transformations for low- power caching in embedded multi-media processors . In Proceedings of the 12th International Parallel Processing Symposium. IEEE, Los Alamitos, 292--297 . Kulkarni, C., Catthoor, F., and Man, H. D. 1998. Code transformations for low- power caching in embedded multi-media processors. In Proceedings of the 12th International Parallel Processing Symposium. IEEE, Los Alamitos, 292--297."},{"key":"e_1_2_1_26_1","unstructured":"Lee C. G. 1998. UTDSP benchmarks. http:\/\/www.eecg.toronto.edu\/~corinna\/DSP\/infrastructure\/UTDSP.html.  Lee C. G. 1998. UTDSP benchmarks. http:\/\/www.eecg.toronto.edu\/~corinna\/DSP\/infrastructure\/UTDSP.html."},{"volume-title":"Proceedings of Design Automation&amp;Test in Europe (DATE'06)","author":"Leupers R.","key":"e_1_2_1_27_1","unstructured":"Leupers , R. , Karuri , K. , Kraemer , S. , and Pandey , M . 2006. A design flow for configurable embedded processors-based on optimized instruction set extension synthesis . In Proceedings of Design Automation&amp;Test in Europe (DATE'06) . IEEE, Los Alamitos, 581--586. Leupers, R., Karuri, K., Kraemer, S., and Pandey, M. 2006. A design flow for configurable embedded processors-based on optimized instruction set extension synthesis. In Proceedings of Design Automation&amp;Test in Europe (DATE'06). IEEE, Los Alamitos, 581--586."},{"key":"e_1_2_1_28_1","doi-asserted-by":"publisher","DOI":"10.1109\/TC.2004.1255787"},{"key":"e_1_2_1_29_1","unstructured":"Mckay B. D. 2008. Nauty user's guide. http:\/\/cs.anu.edu.au\/~bdm\/nauty\/.  Mckay B. D. 2008. Nauty user's guide. http:\/\/cs.anu.edu.au\/~bdm\/nauty\/."},{"key":"e_1_2_1_30_1","unstructured":"Mips TECHNOLOGIES. 2007. MIPS32(R) architecture for programmers. http:\/\/www.mips.com\/products\/product-materials\/processor\/mips-architecture.  Mips TECHNOLOGIES. 2007. MIPS32(R) architecture for programmers. http:\/\/www.mips.com\/products\/product-materials\/processor\/mips-architecture."},{"volume-title":"Proceedings of the 14th International Conference on Application-Specific Systems, Architectures and Processors. ACM","author":"Peymandoust A.","key":"e_1_2_1_31_1","unstructured":"Peymandoust , A. , Pozzi , L. , Ienne , P. , and Micheli , G. D . 2003. Automatic instruction set extension and utilization for embedded processors . In Proceedings of the 14th International Conference on Application-Specific Systems, Architectures and Processors. ACM , New York, 108--118. Peymandoust, A., Pozzi, L., Ienne, P., and Micheli, G. D. 2003. Automatic instruction set extension and utilization for embedded processors. In Proceedings of the 14th International Conference on Application-Specific Systems, Architectures and Processors. ACM, New York, 108--118."},{"key":"e_1_2_1_32_1","doi-asserted-by":"publisher","DOI":"10.1109\/TCAD.2005.855950"},{"key":"e_1_2_1_33_1","doi-asserted-by":"publisher","DOI":"10.1145\/1086297.1086300"},{"key":"e_1_2_1_34_1","unstructured":"Rozenblit J. and Buchenrieder K. 1995. Codesign -- Computer-Aided Software\/Hardware Engineering. IEEE Los Alamitos CA.   Rozenblit J. and Buchenrieder K. 1995. Codesign -- Computer-Aided Software\/Hardware Engineering. IEEE Los Alamitos CA."},{"volume-title":"Proceedings of the Joint Modular Languages Conference. Springer-Verlag","author":"Schordan M.","key":"e_1_2_1_35_1","unstructured":"Schordan , M. and Quinlan , D. J . 2003. A source-to-source architecture for user-defined optimizations . In Proceedings of the Joint Modular Languages Conference. Springer-Verlag , Berlin, 214--223. Schordan, M. and Quinlan, D. J. 2003. A source-to-source architecture for user-defined optimizations. In Proceedings of the Joint Modular Languages Conference. Springer-Verlag, Berlin, 214--223."},{"key":"e_1_2_1_36_1","unstructured":"Seoul National University -- Real-Time Research Group. 2008. SNU real-time benchmarks. http:\/\/archi.snu.ac.kr\/realtime\/benchmark\/.  Seoul National University -- Real-Time Research Group. 2008. SNU real-time benchmarks. http:\/\/archi.snu.ac.kr\/realtime\/benchmark\/."},{"key":"e_1_2_1_37_1","unstructured":"Stretch Inc. 2007. SCP architecture reference. http:\/\/www.stretchinc.com.  Stretch Inc. 2007. SCP architecture reference. http:\/\/www.stretchinc.com."},{"key":"e_1_2_1_38_1","unstructured":"Tensilica Inc. 2005. The XPRES compiler: Triple-threat solution to code performance challenges.  Tensilica Inc. 2005. The XPRES compiler: Triple-threat solution to code performance challenges."},{"key":"e_1_2_1_39_1","doi-asserted-by":"publisher","DOI":"10.1109\/ICCAD.2004.1382683"},{"key":"e_1_2_1_40_1","doi-asserted-by":"publisher","DOI":"10.1145\/1146909.1147027"},{"key":"e_1_2_1_41_1","doi-asserted-by":"publisher","DOI":"10.1145\/1162618.1162622"},{"key":"e_1_2_1_42_1","doi-asserted-by":"publisher","DOI":"10.1145\/193209.193217"},{"volume-title":"Proceedings of the IEEE International Conference on Computer Design: VLSI in Computers&amp;Processors. IEEE, Los Alamitos, 599--602","author":"Winters B.","key":"e_1_2_1_43_1","unstructured":"Winters , B. and Hu , A . 2000. Source-level transformations for improved formal verification . In Proceedings of the IEEE International Conference on Computer Design: VLSI in Computers&amp;Processors. IEEE, Los Alamitos, 599--602 . Winters, B. and Hu, A. 2000. Source-level transformations for improved formal verification. In Proceedings of the IEEE International Conference on Computer Design: VLSI in Computers&amp;Processors. IEEE, Los Alamitos, 599--602."}],"container-title":["ACM Transactions on Embedded Computing Systems"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/1550987.1550989","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/1550987.1550989","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T20:22:23Z","timestamp":1750278143000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/1550987.1550989"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2009,7]]},"references-count":43,"journal-issue":{"issue":"4","published-print":{"date-parts":[[2009,7]]}},"alternative-id":["10.1145\/1550987.1550989"],"URL":"https:\/\/doi.org\/10.1145\/1550987.1550989","relation":{},"ISSN":["1539-9087","1558-3465"],"issn-type":[{"type":"print","value":"1539-9087"},{"type":"electronic","value":"1558-3465"}],"subject":[],"published":{"date-parts":[[2009,7]]},"assertion":[{"value":"2007-10-01","order":0,"name":"received","label":"Received","group":{"name":"publication_history","label":"Publication History"}},{"value":"2008-07-01","order":1,"name":"accepted","label":"Accepted","group":{"name":"publication_history","label":"Publication History"}},{"value":"2009-07-24","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}