SecDCP: Secure Dynamic Cache Partitioning for Efficient Timing Channel Protection
Yao Wang, Danfeng Zhang, Andrew Ferraiuolo, Andrew C. Myers, and G. Edward Suh
Cornell University

HPCA 2016
June 2016, Austin, Texas, USA

Abstract:

In today’s multicore processors, the last-level cache is often shared by multiple concurrently running processes to make efficient use of hardware resources. However, previous studies have shown that a shared cache is vulnerable to timing channel attacks, which leak confidential information from one process to another. Static cache partitioning can eliminate the cache timing channels, but incur significant performance overhead. In this paper, we propose Secure Dynamic Cache Partitioning (SecDCP), a partitioning technique that defeats cache timing channel attacks. The SecDCP scheme changes the size of cache partitions at run time for better performance while preventing insecure information leakage between processes. For cache-sensitive multiprogram workloads, our experiment results show that SecDCP improves performance by up to 43% and on average 12.5% over static cache partitioning.