Cache-Aware Real-Time Virtualization for Clustered Multi-Core Platforms

被引:7
作者
Lim, Yoojin [1 ]
Kim, Hyoseung [2 ]
机构
[1] Elect & Telecommun Res Inst, Daejeon 34129, South Korea
[2] Univ Calif Riverside, Dept Elect & Comp Engn, Riverside, CA 92521 USA
关键词
Cache interference; clustered multi-core platforms; real-time systems; embedded virtualization; real-time hypervisor; partitioning hypervisor; real-time resource management; MANAGEMENT; ALLOCATION;
D O I
10.1109/ACCESS.2019.2939859
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
With the increasing complexity of recent autonomous platforms, there is a strong demand to better utilize system resources while satisfying stringent real-time requirements. Embedded virtualization is an appealing technology to meet this demand. It enables the consolidation of real-time systems with different criticality levels on a single hardware platform by enforcing temporal isolation. On multi-core platforms, however, shared hardware resources, such as caches and memory buses, weaken this isolation. In particular, due to the resulting cache interference, a large last-level cache in recent processors can easily jeopardize the timing predictability of real-time tasks due to cache interference. While researchers in the real-time systems community have developed solutions to tackle this problem, existing cache management schemes reveal two major limitations when used in a clustered multi-core embedded system. The first is the cache co-partitioning problem, which can lead to wrong cache allocation and cache underutilization. The second is the cache interference of inter-virtual-machine (VM) communication because prior work has considered only independent tasks. This paper presents a cluster-aware real-time cache allocation scheme to address these problems. The proposed scheme takes into account the cluster information of the system, and finds the cache allocation that satisfies the timing and memory requirements of tasks. The scheme also maximizes slack time to meet task deadline, which brings flexibility and resilience to unexpected events. Tasks using inter-VM communication are also provided with guaranteed blocking time and cache isolation. We have implemented a prototype of our scheme on an Nvidia TX2 clustered multi-core platform and evaluated the effectiveness of our scheme over cluster-unaware approaches.
引用
收藏
页码:128628 / 128640
页数:13
相关论文
共 51 条
[1]   Evaluation of Cache Partitioning for Hard Real-Time Systems [J].
Altmeyer, Sebastian ;
Douma, Roeland ;
Lunniss, Will ;
Davis, Robert i. .
2014 26TH EUROMICRO CONFERENCE ON REAL-TIME SYSTEMS (ECRTS 2014), 2014, :15-+
[2]  
[Anonymous], P C USENIX ANN TECHN
[3]  
[Anonymous], 1983, THESIS
[4]  
[Anonymous], 2016, P 2016 IEEE REAL TIM, DOI DOI 10.1109/RTAS.2016.7461361
[5]  
Åsberg M, 2013, IEEE REAL TIME, P129, DOI 10.1109/RTAS.2013.6531086
[6]  
Awan M. A., 2017, P EUR C REAL TIM SYS, P1
[7]   STACK-BASED SCHEDULING OF REALTIME PROCESSES [J].
BAKER, TP .
REAL-TIME SYSTEMS, 1991, 3 (01) :67-99
[8]  
Bletsas K., 2015, CISTERTR150713 POL I
[9]   A flexible real-time locking protocol for multiprocessors [J].
Block, Aaron ;
Leontyev, Hennadiy ;
Brandenburg, Bjoern B. ;
Anderson, James H. .
13TH IEEE INTERNATIONAL CONFERENCE ON EMBEDDED AND REAL-TIME COMPUTING SYSTEMS AND APPLICATIONS, PROCEEDINGS, 2007, :47-+
[10]   Impact of Cache Partitioning on Multi-Tasking Real Time Embedded Systems [J].
Bui, Bach D. ;
Caccamo, Marco ;
Sha, Lui ;
Martinez, Joseph .
RTCSA 2008: 14TH IEEE INTERNATIONAL CONFERENCE ON EMBEDDED AND REAL-TIME COMPUTING SYSTEMS AND APPLICATIONS - PROCEEDINGS, 2008, :101-+