Deterministic Memory Hierarchy and Virtualization for Modern Multi-Core Embedded Systems

被引:44
|
作者
Kloda, Tomasz [1 ]
Solieri, Marco [1 ]
Mancuso, Renato [2 ]
Capodieci, Nicola [1 ]
Valente, Paolo [1 ]
Bertogna, Marko [1 ]
机构
[1] Univ Modena & Reggio Emilia, Modena, Italy
[2] Boston Univ, Boston, MA 02215 USA
关键词
CACHE;
D O I
10.1109/RTAS.2019.00009
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
One of the main predictability bottlenecks of modern multi-core embedded systems is contention for access to shared memory resources. Partitioning and software-driven allocation of memory resources is an effective strategy to mitigate contention in the memory hierarchy. Unfortunately, however, many of the strategies adopted so far can have unforeseen side-effects when practically implemented latest-generation, high-performance embedded platforms. Predictability is further jeopardized by cache eviction policies based on random replacement, targeting average performance instead of timing determinism. In this paper, we present a framework of software-based techniques to restore memory access determinism in high-performance embedded systems. Our approach leverages OS-transparent and DMA-friendly cache coloring, in combination with an invalidation-driven allocation (IDA) technique. The proposed method allows protecting important cache blocks from (i) external eviction by tasks concurrently executing on different cores, and (ii) internal eviction by tasks running on the same core. A working implementation obtained by extending the Jailhouse partitioning hypervisor is presented and evaluated with a combination of synthetic and real benchmarks.
引用
收藏
页码:1 / 14
页数:14
相关论文
共 50 条
  • [1] MESS: Memory Performance Debugging on Embedded Multi-core Systems
    Chattopadhyay, Sudipta
    [J]. MODEL CHECKING SOFTWARE, SPIN 2015, 2015, 9232 : 105 - 125
  • [2] Insights on memory controller scaling in multi-core embedded systems
    Marino, Mario Donato
    Li, Kuan-Ching
    [J]. INTERNATIONAL JOURNAL OF EMBEDDED SYSTEMS, 2014, 6 (04) : 351 - 361
  • [3] Hardware-assisted Reliability Enhancement for Embedded Multi-core Virtualization Design
    Lin, Tsung-Han
    Kinebuchi, Yuki
    Shimada, Hiromasa
    Mitake, Hitoshi
    Lee, Chen-Yi
    Nakajima, Tatsuo
    [J]. 2011 IEEE 17TH INTERNATIONAL CONFERENCE ON EMBEDDED AND REAL-TIME COMPUTING SYSTEMS AND APPLICATIONS (RTCSA 2011), VOL 2, 2011, : 101 - 105
  • [4] Leveraging Hardware-Assisted Virtualization for Deterministic Replay on Commodity Multi-Core Processors
    Ren, Shiru
    Tan, Le
    Li, Chunqi
    Xiao, Zhen
    Song, Weijia
    [J]. IEEE TRANSACTIONS ON COMPUTERS, 2018, 67 (01) : 45 - 58
  • [5] A Data Locality and Memory Contention Analysis Method in Embedded NUMA Multi-core Systems
    Li, Lin
    Fussenegger, Markus
    Cichon, Gordon
    [J]. 2016 IEEE 10TH INTERNATIONAL SYMPOSIUM ON EMBEDDED MULTICORE/MANY-CORE SYSTEMS-ON-CHIP (MCSOC), 2016, : 85 - 92
  • [6] A Coordination Language for Programming Embedded Multi-Core Systems
    Schuele, Tobias
    [J]. 2009 INTERNATIONAL CONFERENCE ON PARALLEL AND DISTRIBUTED COMPUTING, APPLICATIONS AND TECHNOLOGIES (PDCAT 2009), 2009, : 201 - 209
  • [7] Architecture/OS Support for Embedded Multi-core Systems
    Chung, Sung Woo
    Lee, Hsien-Hsin S.
    Lee, Woo Hyong
    [J]. COMPUTER JOURNAL, 2010, 53 (08): : 1134 - 1135
  • [8] Behavior-aware cache hierarchy optimization for low-power multi-core embedded systems
    Zhao, Huatao
    Luo, Xiao
    Zhu, Chen
    Watanabe, Takahiro
    Zhu, Tianbo
    [J]. MODERN PHYSICS LETTERS B, 2017, 31 (19-21):
  • [9] Study on memory race recording mechanism in deterministic multi-core replay
    Zhu, Su-Xia
    Ji, Zhen-Zhou
    Liu, Tao
    Wang, Qing
    Zhang, Hao
    [J]. Tien Tzu Hsueh Pao/Acta Electronica Sinica, 2011, 39 (12): : 2748 - 2754
  • [10] The transformation hierarchy in the era of multi-core
    Patt, Yale
    [J]. HIGH PERFORMANCE COMPUTING - HIPC 2007, PROCEEDINGS, 2007, 4873 : 5 - 5