vCAT: Dynamic Cache Management Using CAT Virtualization

Thumbnail Image
Penn collection
Departmental Papers (CIS)
Degree type
CPS Real-Time
Computer Engineering
Computer Sciences
Grant number
Copyright date
Related resources
Phan, Linh T.X.
Choi, Hyon-Young
Lee, Insup

This paper presents vCAT, a novel design for dynamic shared cache management on multicore virtualization platforms based on Intel’s Cache Allocation Technology (CAT). Our design achieves strong isolation at both task and VM levels through cache partition virtualization, which works in a similar way as memory virtualization, but has challenges that are unique to cache and CAT. To demonstrate the feasibility and benefits of our design, we provide a prototype implementation of vCAT, and we present an extensive set of microbenchmarks and performance evaluation results on the PARSEC benchmarks and synthetic workloads, for both static and dynamic allocations. The evaluation results show that (i) vCAT can be implemented with minimal overhead, (ii) it can be used to mitigate shared cache interference, which could have caused task WCET increased by up to 7.2 x, (iii) static management in vCAT can increase system utilization by up to 7 x compared to a system without cache management; and (iv) dynamic management substantially outperforms static management in terms of schedulable utilization (increase by up to 3 x in our multi-mode example use case).

Date of presentation
Conference name
Departmental Papers (CIS)
Conference dates
Conference location
Date Range for Data Collection (Start Date)
Date Range for Data Collection (End Date)
Digital Object Identifier
Series name and number
Volume number
Issue number
Publisher DOI
Journal Issue
<p>23th IEEE Real-Time and Embedded Technology and Applications Symposium (RTAS' 17), Pittsburgh, PA, April 2017</p>
Recommended citation
<p>@INPROCEEDINGS{Xu17,</p> <p>author = {M. Xu and L. T. X. Phan and H. Y. Choi and I. Lee},</p> <p>title = {vCAT: Dynamic Cache Management using CAT Virtualization},</p> <p>booktitle = {2017 IEEE Real-Time and Embedded Technology and Applications Symposium (RTAS'17)},</p> <p>location = {Pittsburgh, PA},</p> <p>month = {apr},</p> <p>year = {2017},</p> <p>}</p>