Branch Prediction-Directed Dynamic Instruction Cache Locking for Embedded Systems

被引:6
|
作者
Qiu, Keni [1 ]
Zhao, Mengying [1 ]
Xue, Chun Jason [1 ]
Orailoglu, Alex [2 ]
机构
[1] City Univ Hong Kong, Dept Comp Sci, Hong Kong, Hong Kong, Peoples R China
[2] Univ Calif San Diego, Dept Comp Sci & Engn, San Diego, CA 92103 USA
关键词
Design; Algorithms; Performance; Dynamic cache locking; branch prediction; instruction cache; execution region partitioning; system performance;
D O I
10.1145/2660492
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
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.
引用
收藏
页数:24
相关论文
共 50 条
  • [41] Branch prediction, instruction-window size, and cache size: Performance trade-offs and simulation techniques
    Skadron, K
    Ahuja, PS
    Martonosi, M
    Clark, DW
    IEEE TRANSACTIONS ON COMPUTERS, 1999, 48 (11) : 1260 - 1281
  • [42] Branch prediction, instruction-window size, and cache size: Performance trade-offs and simulation techniques
    Univ of Virginia, Charlottesville, United States
    IEEE Trans Comput, 11 (1260-1281):
  • [43] Phase-based Dynamic Instruction Window Optimization for Embedded Systems
    Adegbija, Tosiron
    Gordon-Ross, Ann
    2016 IEEE COMPUTER SOCIETY ANNUAL SYMPOSIUM ON VLSI (ISVLSI), 2016, : 397 - 402
  • [44] A Hardware-assisted Translation Cache for Dynamic Binary Translation in Embedded Systems
    Salgado, Filipe
    Gomes, Tiago
    Tavares, Adriano
    Cabral, Jorge
    2018 IEEE 23RD INTERNATIONAL CONFERENCE ON EMERGING TECHNOLOGIES AND FACTORY AUTOMATION (ETFA), 2018, : 307 - 312
  • [45] Using Dynamic, Full Cache Locking and Genetic Algorithms for Cache Size Minimization in Multitasking, Preemptive, Real-Time Systems
    Marti Campoy, Antonio
    Rodriguez-Ballester, Francisco
    Ors Carot, Rafael
    THEORY AND PRACTICE OF NATURAL COMPUTING, 2013, 8273 : 157 - 168
  • [46] Dynamic round-robin task scheduling to reduce cache misses for embedded systems
    Batcher, Ken W.
    Walker, Robert A.
    2008 DESIGN, AUTOMATION AND TEST IN EUROPE, VOLS 1-3, 2008, : 1332 - +
  • [47] An on-chip instruction cache design with one-bit tag for low-power embedded systems
    Gu, Ji
    Guo, Hui
    Li, Patrick
    MICROPROCESSORS AND MICROSYSTEMS, 2011, 35 (04) : 382 - 391
  • [48] Dynamic Reconfiguration of Two-Level Cache Hierarchy in Real-Time Embedded Systems
    Wang, Weixun
    Mishra, Prabhat
    JOURNAL OF LOW POWER ELECTRONICS, 2011, 7 (01) : 17 - 28
  • [49] Drowsy instruction caches Leakage power reduction using dynamic voltage scaling and cache sub-bank prediction
    Kim, NS
    Flautner, K
    Blaauw, D
    Mudge, T
    35TH ANNUAL IEEE/ACM INTERNATIONAL SYMPOSIUM ON MICROARCHITECTURE (MICRO-35), PROCEEDINGS, 2002, : 219 - 230
  • [50] Timing Prediction for Dynamic Application Migration on Multi-Core Embedded Systems
    Li, Zheng
    Wu, Hao
    He, Shuibing
    2018 IEEE 4TH INTERNATIONAL CONFERENCE ON BIG DATA SECURITY ON CLOUD (BIGDATASECURITY), 4THIEEE INTERNATIONAL CONFERENCE ON HIGH PERFORMANCE AND SMART COMPUTING, (HPSC) AND 3RD IEEE INTERNATIONAL CONFERENCE ON INTELLIGENT DATA AND SECURITY (IDS), 2018, : 159 - 164