{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T04:31:08Z","timestamp":1750221068939,"version":"3.41.0"},"reference-count":31,"publisher":"Association for Computing Machinery (ACM)","issue":"1","license":[{"start":{"date-parts":[[2018,12,21]],"date-time":"2018-12-21T00:00:00Z","timestamp":1545350400000},"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":[[2019,1,31]]},"abstract":"<jats:p>In heterogeneous multicore systems, the memory subsystem, including the last-level cache and DRAM, is widely shared among the CPU, the GPU, and the real-time cores. Due to their distinct memory traffic patterns, heterogeneous cores result in more frequent cache misses at the last-level cache. As cache misses travel through the memory subsystem, two schedulers are involved for the last-level cache and DRAM, respectively. Prior studies treated the scheduling of the last-level cache and DRAM as independent stages. However, with no orchestration and limited visibility of memory traffic, neither scheduling stage is able to ensure optimal scheduling decisions for memory efficiency. Unnecessary precharges and row activations happen in DRAM when the memory scheduler is ignorant of incoming cache misses, and DRAM row-buffer states are invisible to the last-level cache. In this article, we propose a unified memory controller for the the last-level cache and DRAM with orchestrated schedulers. The memory scheduler harvests row-buffer hit opportunities in cache request buffers during spare time without inducing significant implementation cost. We further introduce a dynamic orchestrated scheduling policy to improve memory efficiency while achieving target CPU IPC. Extensive evaluations show that the proposed controller improves the total memory bandwidth of DRAM by 16.8% on average and saves DRAM energy by up to 29.7% while achieving comparable CPU IPCs. With the dynamic scheduling policy, the unified controller achieves the same IPC as the conventional design and increases DRAM bandwidth by 9.2%. In addition, we explore the potential of the proposed memory controller to attain improvements on both memory bandwidth and CPU IPC.<\/jats:p>","DOI":"10.1145\/3269982","type":"journal-article","created":{"date-parts":[[2018,12,21]],"date-time":"2018-12-21T13:39:21Z","timestamp":1545399561000},"page":"1-27","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":0,"title":["Harvesting Row-Buffer Hits via Orchestrated Last-Level Cache and DRAM Scheduling for Heterogeneous Multicore Systems"],"prefix":"10.1145","volume":"24","author":[{"given":"Yang","family":"Song","sequence":"first","affiliation":[{"name":"University of California San Diego, La Jolla, CA"}]},{"given":"Olivier","family":"Alavoine","sequence":"additional","affiliation":[{"name":"Qualcomm Inc., San Diego, CA"}]},{"given":"Bill","family":"Lin","sequence":"additional","affiliation":[{"name":"University of California San Diego, La Jolla, CA"}]}],"member":"320","published-online":{"date-parts":[[2018,12,21]]},"reference":[{"key":"e_1_2_1_1_1","doi-asserted-by":"publisher","DOI":"10.5555\/2337159.2337207"},{"key":"e_1_2_1_2_1","unstructured":"Karthik Chandrasekar Christian Weis Yonghui Li Sven Goossens Matthias Jung Omar Naji Benny Akesson Norbert Wehn and Kees Goossens. 2014. DRAMPower: Open-source DRAM Power and Energy Estimation Tool. Retrieved from http:\/\/www.drampower.info.  Karthik Chandrasekar Christian Weis Yonghui Li Sven Goossens Matthias Jung Omar Naji Benny Akesson Norbert Wehn and Kees Goossens. 2014. DRAMPower: Open-source DRAM Power and Energy Estimation Tool. Retrieved from http:\/\/www.drampower.info."},{"key":"e_1_2_1_3_1","doi-asserted-by":"publisher","DOI":"10.1109\/MICRO.2014.11"},{"key":"e_1_2_1_4_1","doi-asserted-by":"publisher","DOI":"10.1145\/2228360.2228409"},{"key":"e_1_2_1_5_1","volume-title":"Memory Systems: Cache, DRAM, Disk","author":"Jacob Bruce","year":"2007","unstructured":"Bruce Jacob , Spencer Ng , and David Wang . 2007 . Memory Systems: Cache, DRAM, Disk . Morgan Kaufmann Publishers Inc ., San Francisco, CA. Bruce Jacob, Spencer Ng, and David Wang. 2007. Memory Systems: Cache, DRAM, Disk. Morgan Kaufmann Publishers Inc., San Francisco, CA."},{"volume-title":"Proceedings of the Real-Time Systems Symposium (RTSS\u201914)","author":"Jalle Javier","key":"e_1_2_1_6_1","unstructured":"Javier Jalle , Eduardo Qui\u00f1ones , Jaume Abella , Luca Fossati , Marco Zulianello , and Francisco J. Cazorla . 2014. A dual-criticality memory controller (DCmc): Proposal and evaluation of a space case study . In Proceedings of the Real-Time Systems Symposium (RTSS\u201914) . 207--217. Javier Jalle, Eduardo Qui\u00f1ones, Jaume Abella, Luca Fossati, Marco Zulianello, and Francisco J. Cazorla. 2014. A dual-criticality memory controller (DCmc): Proposal and evaluation of a space case study. In Proceedings of the Real-Time Systems Symposium (RTSS\u201914). 207--217."},{"key":"e_1_2_1_7_1","unstructured":"JEDEC. 2017. Low Power Double Data Rate 4 (LPDDR4). Retrieved from https:\/\/www.jedec.org\/standards-documents\/docs\/jesd209-4b.  JEDEC. 2017. Low Power Double Data Rate 4 (LPDDR4). Retrieved from https:\/\/www.jedec.org\/standards-documents\/docs\/jesd209-4b."},{"key":"e_1_2_1_8_1","doi-asserted-by":"publisher","DOI":"10.1145\/2541228.2555300"},{"key":"e_1_2_1_9_1","doi-asserted-by":"publisher","DOI":"10.1145\/2228360.2228513"},{"key":"e_1_2_1_10_1","doi-asserted-by":"publisher","DOI":"10.1109\/HPCA.2014.6835938"},{"key":"e_1_2_1_11_1","doi-asserted-by":"publisher","DOI":"10.1145\/2155620.2155624"},{"key":"e_1_2_1_12_1","doi-asserted-by":"publisher","DOI":"10.1109\/MICRO.2014.62"},{"key":"e_1_2_1_13_1","doi-asserted-by":"publisher","DOI":"10.1145\/2333660.2333751"},{"key":"e_1_2_1_14_1","volume-title":"Proceedings of the 16th International Symposium on High Performance Computer Architecture (HPCA\u201910)","author":"Kim Yoongu","year":"2010","unstructured":"Yoongu Kim , Dongsu Han , Onur Mutlu , and Mor Harchol-Balter . 2010 . ATLAS: A scalable and high-performance scheduling algorithm for multiple memory controllers . In Proceedings of the 16th International Symposium on High Performance Computer Architecture (HPCA\u201910) . 1--12. Yoongu Kim, Dongsu Han, Onur Mutlu, and Mor Harchol-Balter. 2010. ATLAS: A scalable and high-performance scheduling algorithm for multiple memory controllers. In Proceedings of the 16th International Symposium on High Performance Computer Architecture (HPCA\u201910). 1--12."},{"key":"e_1_2_1_15_1","doi-asserted-by":"publisher","DOI":"10.1109\/MICRO.2010.51"},{"key":"e_1_2_1_16_1","doi-asserted-by":"publisher","DOI":"10.1145\/360128.360132"},{"key":"e_1_2_1_17_1","doi-asserted-by":"publisher","DOI":"10.1109\/HPCA.2012.6168947"},{"key":"e_1_2_1_18_1","doi-asserted-by":"publisher","DOI":"10.1145\/2807591.2807606"},{"key":"e_1_2_1_19_1","doi-asserted-by":"publisher","DOI":"10.5555\/2523721.2523753"},{"key":"e_1_2_1_20_1","doi-asserted-by":"publisher","DOI":"10.1109\/ISCA.2008.7"},{"key":"e_1_2_1_21_1","unstructured":"NVIDIA. 2015. Tegra X1. Retrieved from http:\/\/www.nvidia.com\/object\/tegra-x1-processor.html.  NVIDIA. 2015. Tegra X1. Retrieved from http:\/\/www.nvidia.com\/object\/tegra-x1-processor.html."},{"key":"e_1_2_1_22_1","unstructured":"Qualcomm. 2017. Snapdragon 845. Retrieved from https:\/\/www.qualcomm.com\/products\/snapdragon\/processors\/845.  Qualcomm. 2017. Snapdragon 845. Retrieved from https:\/\/www.qualcomm.com\/products\/snapdragon\/processors\/845."},{"key":"e_1_2_1_23_1","doi-asserted-by":"publisher","DOI":"10.1145\/339647.339668"},{"key":"e_1_2_1_24_1","doi-asserted-by":"publisher","DOI":"10.1145\/2007116.2007119"},{"key":"e_1_2_1_25_1","doi-asserted-by":"publisher","DOI":"10.1145\/2897937.2898093"},{"key":"e_1_2_1_26_1","doi-asserted-by":"publisher","DOI":"10.1145\/1815961.1815972"},{"key":"e_1_2_1_27_1","doi-asserted-by":"publisher","DOI":"10.1145\/1105734.1105748"},{"key":"e_1_2_1_28_1","doi-asserted-by":"publisher","DOI":"10.1145\/2897937.2898036"},{"volume-title":"Proceedings of the 39th Annual International Symposium on Computer Architecture (ISCA\u201912)","author":"Wang Zhe","key":"e_1_2_1_29_1","unstructured":"Zhe Wang , Samira M. Khan , and Daniel A. Jim\u00e9nez . 2012. Improving writeback efficiency with decoupled last-write prediction . In Proceedings of the 39th Annual International Symposium on Computer Architecture (ISCA\u201912) . IEEE Computer Society, Washington, D.C., 309--320. Zhe Wang, Samira M. Khan, and Daniel A. Jim\u00e9nez. 2012. Improving writeback efficiency with decoupled last-write prediction. In Proceedings of the 39th Annual International Symposium on Computer Architecture (ISCA\u201912). IEEE Computer Society, Washington, D.C., 309--320."},{"key":"e_1_2_1_30_1","doi-asserted-by":"publisher","DOI":"10.5555\/2561828.2561929"},{"key":"e_1_2_1_31_1","doi-asserted-by":"publisher","DOI":"10.1109\/HPCA.2015.7056023"}],"container-title":["ACM Transactions on Design Automation of Electronic Systems"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3269982","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3269982","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T00:57:21Z","timestamp":1750208241000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3269982"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2018,12,21]]},"references-count":31,"journal-issue":{"issue":"1","published-print":{"date-parts":[[2019,1,31]]}},"alternative-id":["10.1145\/3269982"],"URL":"https:\/\/doi.org\/10.1145\/3269982","relation":{},"ISSN":["1084-4309","1557-7309"],"issn-type":[{"type":"print","value":"1084-4309"},{"type":"electronic","value":"1557-7309"}],"subject":[],"published":{"date-parts":[[2018,12,21]]},"assertion":[{"value":"2018-01-01","order":0,"name":"received","label":"Received","group":{"name":"publication_history","label":"Publication History"}},{"value":"2018-08-01","order":1,"name":"accepted","label":"Accepted","group":{"name":"publication_history","label":"Publication History"}},{"value":"2018-12-21","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}