{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,11,18]],"date-time":"2025-11-18T12:16:51Z","timestamp":1763468211316,"version":"3.41.0"},"reference-count":23,"publisher":"Association for Computing Machinery (ACM)","issue":"5s","license":[{"start":{"date-parts":[[2014,10,6]],"date-time":"2014-10-06T00:00:00Z","timestamp":1412553600000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"funder":[{"DOI":"10.13039\/501100002920","name":"Research Grants Council, University Grants Committee, Hong Kong","doi-asserted-by":"publisher","id":[{"id":"10.13039\/501100002920","id-type":"DOI","asserted-by":"publisher"}]}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["ACM Trans. Embed. Comput. Syst."],"published-print":{"date-parts":[[2014,12,15]]},"abstract":"<jats:p>Cache locking is a cache management technique to preclude the replacement of locked cache contents. Cache locking is often adopted to improve cache access predictability in Worst-Case Execution Time (WCET) analysis. Static cache locking methods have been proposed recently to improve Average-Case Execution Time (ACET) performance. This article presents an approach, Branch Prediction-directed Dynamic Cache Locking (BPDCL), to improve system performance through cache conflict miss reduction. In the proposed approach, the control flow graph of a program is first partitioned into disjoint execution regions, then memory blocks worth locking are determined by calculating the locking profit for each region. These two steps are conducted during compilation time. At runtime, directed by branch predictions, locking routines are prefetched into a small high-speed buffer. The predetermined cache locking contents are loaded and locked at specific execution points during program execution. Experimental results show that the proposed BPDCL method exhibits an average improvement of 25.9%, 13.8%, and 8.0% on cache miss rate reduction in comparison to cases with no cache locking, the static locking method, and the dynamic locking method, respectively.<\/jats:p>","DOI":"10.1145\/2660492","type":"journal-article","created":{"date-parts":[[2014,10,7]],"date-time":"2014-10-07T12:57:47Z","timestamp":1412686667000},"page":"1-24","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":6,"title":["Branch Prediction-Directed Dynamic Instruction Cache Locking for Embedded Systems"],"prefix":"10.1145","volume":"13","author":[{"given":"Keni","family":"Qiu","sequence":"first","affiliation":[{"name":"City University of Hong Kong"}]},{"given":"Mengying","family":"Zhao","sequence":"additional","affiliation":[{"name":"City University of Hong Kong"}]},{"given":"Chun Jason","family":"Xue","sequence":"additional","affiliation":[{"name":"City University of Hong Kong"}]},{"given":"Alex","family":"Orailoglu","sequence":"additional","affiliation":[{"name":"University of California, San Diego"}]}],"member":"320","published-online":{"date-parts":[[2014,10,6]]},"reference":[{"key":"e_1_2_1_1_1","doi-asserted-by":"publisher","DOI":"10.1145\/1629395.1629422"},{"key":"e_1_2_1_2_1","unstructured":"ARM. 2000. ARM940T technical reference manual. http:\/\/infocenter.arm.com\/help\/topic\/com.arm.doc.ddi 0144b\/940T_TRM_S.pdf. ARM. 2000. ARM940T technical reference manual. http:\/\/infocenter.arm.com\/help\/topic\/com.arm.doc.ddi 0144b\/940T_TRM_S.pdf."},{"key":"e_1_2_1_3_1","volume-title":"Proceedings of the 14th International Conference on Real-Time and Network Systems (RNTS'06)","author":"Arnaud Alexis","year":"2006","unstructured":"Alexis Arnaud and Isabelle Puaut . 2006 . Dynamic instruction cache locking in hard real-time systems . In Proceedings of the 14th International Conference on Real-Time and Network Systems (RNTS'06) . 179--188. Alexis Arnaud and Isabelle Puaut. 2006. Dynamic instruction cache locking in hard real-time systems. In Proceedings of the 14th International Conference on Real-Time and Network Systems (RNTS'06). 179--188."},{"key":"e_1_2_1_4_1","doi-asserted-by":"publisher","DOI":"10.1145\/155090.155119"},{"key":"e_1_2_1_5_1","doi-asserted-by":"publisher","DOI":"10.1177\/109434200001400404"},{"key":"e_1_2_1_6_1","doi-asserted-by":"crossref","unstructured":"Brian Everitt Sabine Landau and Morven Leese. 2001. Cluster Analysis. Arnold. Brian Everitt Sabine Landau and Morven Leese. 2001. Cluster Analysis. Arnold.","DOI":"10.1002\/9781118887486.ch6"},{"key":"e_1_2_1_7_1","doi-asserted-by":"publisher","DOI":"10.1145\/330249.330254"},{"key":"e_1_2_1_8_1","doi-asserted-by":"publisher","DOI":"10.5555\/1128020.1128563"},{"key":"e_1_2_1_9_1","doi-asserted-by":"publisher","DOI":"10.1145\/258915.258931"},{"key":"e_1_2_1_10_1","doi-asserted-by":"publisher","DOI":"10.1109\/12.40842"},{"key":"e_1_2_1_11_1","first-page":"93","article-title":"A graph-based clustering method for a large set of sequences using a graph partitioning algorithm","volume":"12","author":"Kawaji Hideya","year":"2001","unstructured":"Hideya Kawaji , Yosuke Yamaguchi , Hideo Matsuda , and Akihiro Hashimoto . 2001 . A graph-based clustering method for a large set of sequences using a graph partitioning algorithm . Genome Inf. 12 , 93 -- 102 . Hideya Kawaji, Yosuke Yamaguchi, Hideo Matsuda, and Akihiro Hashimoto. 2001. A graph-based clustering method for a large set of sequences using a graph partitioning algorithm. Genome Inf. 12, 93--102.","journal-title":"Genome Inf."},{"key":"e_1_2_1_12_1","doi-asserted-by":"publisher","DOI":"10.5555\/977395.977673"},{"key":"e_1_2_1_13_1","doi-asserted-by":"publisher","DOI":"10.1145\/1837274.1837362"},{"key":"e_1_2_1_14_1","doi-asserted-by":"publisher","DOI":"10.1109\/RTAS.2009.11"},{"key":"e_1_2_1_15_1","doi-asserted-by":"publisher","DOI":"10.1007\/s11265-011-0650-6"},{"key":"e_1_2_1_16_1","doi-asserted-by":"publisher","DOI":"10.1145\/70082.68200"},{"key":"e_1_2_1_17_1","series-title":"struction set","volume-title":"MIPS32 architecture for programmers","author":"MIPS.","unstructured":"MIPS. 2001. MIPS32 architecture for programmers volume ii: The mips 32 in struction set . http:\/\/www.mips. com\/. MIPS. 2001. MIPS32 architecture for programmers volume ii: The mips32 instruction set. http:\/\/www.mips. com\/."},{"key":"e_1_2_1_18_1","unstructured":"MPC. 2006. MPC8XX performance-driven optimization of caches and mmu configuration. http:\/\/www. freescale.com\/files\/32bit\/doc\/appnote\/AN3066.pdf. MPC. 2006. MPC8XX performance-driven optimization of caches and mmu configuration. http:\/\/www. freescale.com\/files\/32bit\/doc\/appnote\/AN3066.pdf."},{"key":"e_1_2_1_19_1","doi-asserted-by":"publisher","DOI":"10.1109\/MICRO.2004.28"},{"key":"e_1_2_1_20_1","doi-asserted-by":"publisher","DOI":"10.1145\/989393.989433"},{"key":"e_1_2_1_21_1","doi-asserted-by":"publisher","DOI":"10.1145\/192724.192725"},{"volume-title":"3rd generation intel xscale microarchirtecture","author":"XSCALE.","key":"e_1_2_1_22_1","unstructured":"XSCALE. 2007. 3rd generation intel xscale microarchirtecture . http:\/\/download.intel.com\/design\/intel xscale\/31628302.pdf. XSCALE. 2007. 3rd generation intel xscale microarchirtecture. http:\/\/download.intel.com\/design\/intel xscale\/31628302.pdf."},{"key":"e_1_2_1_23_1","doi-asserted-by":"publisher","DOI":"10.1145\/859618.859635"}],"container-title":["ACM Transactions on Embedded Computing Systems"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/2660492","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/2660492","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T06:11:54Z","timestamp":1750227114000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/2660492"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2014,10,6]]},"references-count":23,"journal-issue":{"issue":"5s","published-print":{"date-parts":[[2014,12,15]]}},"alternative-id":["10.1145\/2660492"],"URL":"https:\/\/doi.org\/10.1145\/2660492","relation":{},"ISSN":["1539-9087","1558-3465"],"issn-type":[{"type":"print","value":"1539-9087"},{"type":"electronic","value":"1558-3465"}],"subject":[],"published":{"date-parts":[[2014,10,6]]},"assertion":[{"value":"2013-09-01","order":0,"name":"received","label":"Received","group":{"name":"publication_history","label":"Publication History"}},{"value":"2014-04-01","order":1,"name":"accepted","label":"Accepted","group":{"name":"publication_history","label":"Publication History"}},{"value":"2014-10-06","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}