{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,5,1]],"date-time":"2026-05-01T17:56:43Z","timestamp":1777658203976,"version":"3.51.4"},"reference-count":42,"publisher":"Association for Computing Machinery (ACM)","issue":"1","license":[{"start":{"date-parts":[[2016,9,2]],"date-time":"2016-09-02T00:00:00Z","timestamp":1472774400000},"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. Des. Autom. Electron. Syst."],"published-print":{"date-parts":[[2017,1,31]]},"abstract":"<jats:p>Scratchpad memory (SPM) is considered a useful component in the memory hierarchy, solely or along with caches, for meeting the power and energy constraints as performance ceases to be the sole criteria for processor design. Although the efficiency of SPM is well known, its use has been restricted owing to difficulties in programmability. Real applications usually have regions that are amenable to exploitation by either SPM or cache and hence can benefit if the two are used in conjunction. Dynamically adjusting the local memory resources to suit application demand can significantly improve the efficiency of the overall system. In this article, we propose a compiler technique to map application data objects to the SPM-cache and also partition the local memory between the SPM and cache depending on the dynamic requirement of the application. First, we introduce a novel graph-based structure to tackle data allocation in an application. Second, we use this to present a data allocation heuristic to map program objects for a fixed-size SPM-cache hybrid system that targets whole program optimization. We finally extend this formulation to adapt the SPM and cache sizes, as well as the data allocation as per the requirement of different application regions. We study the applicability of the technique on various workloads targeted at both SPM-only and hardware reconfigurable memory systems, observing an average of 18% energy-delay improvement over state-of-the-art techniques.<\/jats:p>","DOI":"10.1145\/2934680","type":"journal-article","created":{"date-parts":[[2016,9,2]],"date-time":"2016-09-02T14:33:50Z","timestamp":1472826830000},"page":"1-25","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":9,"title":["Partitioning and Data Mapping in Reconfigurable Cache and Scratchpad Memory--Based Architectures"],"prefix":"10.1145","volume":"22","author":[{"given":"Prasenjit","family":"Chakraborty","sequence":"first","affiliation":[{"name":"Indian Institute of Technology Delhi"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Preeti Ranjan","family":"Panda","sequence":"additional","affiliation":[{"name":"Indian Institute of Technology Delhi, India"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Sandeep","family":"Sen","sequence":"additional","affiliation":[{"name":"Indian Institute of Technology Delhi, India"}],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"320","published-online":{"date-parts":[[2016,9,2]]},"reference":[{"key":"e_1_2_1_1_1","doi-asserted-by":"publisher","DOI":"10.1109\/DATE.2005.97"},{"key":"e_1_2_1_2_1","doi-asserted-by":"publisher","DOI":"10.5555\/320080.320119"},{"key":"e_1_2_1_3_1","doi-asserted-by":"publisher","DOI":"10.1145\/2749469.2750411"},{"key":"e_1_2_1_4_1","doi-asserted-by":"publisher","DOI":"10.5555\/2388996.2389117"},{"key":"e_1_2_1_5_1","doi-asserted-by":"publisher","DOI":"10.1145\/2038698.2038731"},{"key":"e_1_2_1_6_1","doi-asserted-by":"publisher","DOI":"10.1145\/360128.360153"},{"key":"e_1_2_1_7_1","volume-title":"Technical Report 762, University of Dortmund.","author":"Banakar R.","year":"2001","unstructured":"R. Banakar , S. Steinke , B.-S. Lee , M. Balakrishnan , and P. Marwedel . 2001 . Comparison of Cache- and Scratch-Pad Based Memory Systems with Respect to Performance, Area and Energy Consumption . Technical Report 762, University of Dortmund. R. Banakar, S. Steinke, B.-S. Lee, M. Balakrishnan, and P. Marwedel. 2001. Comparison of Cache- and Scratch-Pad Based Memory Systems with Respect to Performance, Area and Energy Consumption. Technical Report 762, University of Dortmund."},{"key":"e_1_2_1_8_1","doi-asserted-by":"publisher","DOI":"10.1145\/774789.774805"},{"key":"e_1_2_1_9_1","doi-asserted-by":"publisher","DOI":"10.1093\/comjnl\/bxq026"},{"key":"e_1_2_1_10_1","doi-asserted-by":"publisher","DOI":"10.1145\/2063384.2063454"},{"key":"e_1_2_1_11_1","doi-asserted-by":"publisher","DOI":"10.5555\/1898699.1898713"},{"key":"e_1_2_1_12_1","doi-asserted-by":"publisher","DOI":"10.1145\/2380403.2380440"},{"key":"e_1_2_1_13_1","doi-asserted-by":"publisher","DOI":"10.5555\/1131481.1131741"},{"key":"e_1_2_1_14_1","doi-asserted-by":"publisher","DOI":"10.1145\/1375527.1375570"},{"key":"e_1_2_1_15_1","volume-title":"Proceedings of the 19th International Conference on Languages and Compilers for Parallel Computing (LCPC\u201906)","author":"Chen Tong","unstructured":"Tong Chen , Zehra Sura , Kathryn O\u2019Brien , and John K . O\u2019Brien. 2007. Optimizing the use of static buffers for DMA on a cell chip . In Proceedings of the 19th International Conference on Languages and Compilers for Parallel Computing (LCPC\u201906) . 314--329. http:\/\/dl.acm.org\/citation.cfm?id&equals;1757112.1757144 Tong Chen, Zehra Sura, Kathryn O\u2019Brien, and John K. O\u2019Brien. 2007. Optimizing the use of static buffers for DMA on a cell chip. In Proceedings of the 19th International Conference on Languages and Compilers for Parallel Computing (LCPC\u201906). 314--329. http:\/\/dl.acm.org\/citation.cfm?id&equals;1757112.1757144"},{"key":"e_1_2_1_16_1","doi-asserted-by":"publisher","DOI":"10.1145\/1356058.1356079"},{"key":"e_1_2_1_17_1","doi-asserted-by":"publisher","DOI":"10.1145\/2024724.2024937"},{"key":"e_1_2_1_18_1","doi-asserted-by":"publisher","DOI":"10.5555\/545215.545241"},{"key":"e_1_2_1_19_1","doi-asserted-by":"publisher","DOI":"10.1109\/PACT.2005.33"},{"key":"e_1_2_1_20_1","unstructured":"FERMI. 2010. NVIDIA\u2019s Next Generation CUDA Compute Architecture. Available at http:\/\/www.nvidia.com.  FERMI. 2010. NVIDIA\u2019s Next Generation CUDA Compute Architecture. Available at http:\/\/www.nvidia.com."},{"key":"e_1_2_1_21_1","doi-asserted-by":"publisher","DOI":"10.1145\/1454115.1454156"},{"key":"e_1_2_1_22_1","doi-asserted-by":"publisher","DOI":"10.1145\/1346281.1346319"},{"key":"e_1_2_1_23_1","doi-asserted-by":"publisher","DOI":"10.1145\/513829.513858"},{"key":"e_1_2_1_24_1","doi-asserted-by":"publisher","DOI":"10.1145\/1454115.1454157"},{"key":"e_1_2_1_25_1","doi-asserted-by":"publisher","DOI":"10.1147\/rd.494.0589"},{"key":"e_1_2_1_26_1","doi-asserted-by":"publisher","DOI":"10.1145\/378239.379049"},{"key":"e_1_2_1_27_1","volume-title":"Proceedings of the 30th Annual ACM\/IEEE International Symposium on Microarchitecture (MICRO-30)","author":"Lee Chunho","unstructured":"Chunho Lee , Miodrag Potkonjak , and William H . Mangione-Smith. 1997. MediaBench: A tool for evaluating and synthesizing multimedia and communications systems . In Proceedings of the 30th Annual ACM\/IEEE International Symposium on Microarchitecture (MICRO-30) . IEEE, Los Alamitos, CA, 330--335. http:\/\/dl.acm.org\/citation.cfm?id&equals;266800.266832. Chunho Lee, Miodrag Potkonjak, and William H. Mangione-Smith. 1997. MediaBench: A tool for evaluating and synthesizing multimedia and communications systems. In Proceedings of the 30th Annual ACM\/IEEE International Symposium on Microarchitecture (MICRO-30). IEEE, Los Alamitos, CA, 330--335. http:\/\/dl.acm.org\/citation.cfm?id&equals;266800.266832."},{"key":"e_1_2_1_28_1","doi-asserted-by":"publisher","DOI":"10.1145\/1250662.1250707"},{"key":"e_1_2_1_29_1","doi-asserted-by":"publisher","DOI":"10.1109\/ISPASS.2014.6844487"},{"key":"e_1_2_1_30_1","doi-asserted-by":"publisher","DOI":"10.1145\/1582710.1582711"},{"key":"e_1_2_1_31_1","doi-asserted-by":"publisher","DOI":"10.1145\/1065010.1065034"},{"key":"e_1_2_1_32_1","doi-asserted-by":"publisher","DOI":"10.1145\/339647.339673"},{"key":"e_1_2_1_33_1","doi-asserted-by":"publisher","DOI":"10.5555\/648002.743094"},{"key":"e_1_2_1_34_1","unstructured":"NERSC-8. 2013. Trinity Benchmarks. Available at http:\/\/www.nersc.gov.  NERSC-8. 2013. Trinity Benchmarks. Available at http:\/\/www.nersc.gov."},{"key":"e_1_2_1_35_1","doi-asserted-by":"publisher","DOI":"10.5555\/787260.787762"},{"key":"e_1_2_1_36_1","doi-asserted-by":"publisher","DOI":"10.1145\/339647.339685"},{"key":"e_1_2_1_37_1","doi-asserted-by":"publisher","DOI":"10.1109\/HPCA.2009.4798237"},{"key":"e_1_2_1_38_1","doi-asserted-by":"publisher","DOI":"10.1145\/859618.859657"},{"key":"e_1_2_1_39_1","volume-title":"CPU2000 V1.3 Retrieved","author":"SPEC.","year":"2000","unstructured":"SPEC. 2000 . CPU2000 V1.3 Retrieved July 5, 2016, from http:\/\/www.spec.org\/cpu2000\/. SPEC. 2000. CPU2000 V1.3 Retrieved July 5, 2016, from http:\/\/www.spec.org\/cpu2000\/."},{"key":"e_1_2_1_40_1","doi-asserted-by":"publisher","DOI":"10.1145\/2016604.2016616"},{"key":"e_1_2_1_41_1","doi-asserted-by":"publisher","DOI":"10.1145\/951710.951747"},{"key":"e_1_2_1_42_1","doi-asserted-by":"publisher","DOI":"10.5555\/1131481.1131740"}],"container-title":["ACM Transactions on Design Automation of Electronic Systems"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/2934680","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/2934680","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T03:39:47Z","timestamp":1750217987000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/2934680"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2016,9,2]]},"references-count":42,"journal-issue":{"issue":"1","published-print":{"date-parts":[[2017,1,31]]}},"alternative-id":["10.1145\/2934680"],"URL":"https:\/\/doi.org\/10.1145\/2934680","relation":{},"ISSN":["1084-4309","1557-7309"],"issn-type":[{"value":"1084-4309","type":"print"},{"value":"1557-7309","type":"electronic"}],"subject":[],"published":{"date-parts":[[2016,9,2]]},"assertion":[{"value":"2015-12-01","order":0,"name":"received","label":"Received","group":{"name":"publication_history","label":"Publication History"}},{"value":"2016-05-01","order":1,"name":"accepted","label":"Accepted","group":{"name":"publication_history","label":"Publication History"}},{"value":"2016-09-02","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}