KPart: A Hybrid Cache Partitioning-Sharing Technique for Commodity Multicores
Name
2018.kpart.hpca.pdf
Description
Accepted version
Size
742.9 KB
Format
Adobe PDF
Checksum (MD5)
44d49d0ceb4df756ac1805c15cb5e8c0
Author(s) • • • • •
El-Sayed, Nosayba
Mukkara, Anurag
Tsai, Po-An
Kasture, Harshad
Ma, Xiaosong
Sanchez, Daniel
Date Issued
February 2018
Publisher
IEEE
Citation
El-Sayed, Nosayba, Mukkara, Anurag, Tsai, Po-An, Kasture, Harshad, Ma, Xiaosong et al. 2018. "KPart: A Hybrid Cache Partitioning-Sharing Technique for Commodity Multicores."
Version
Author's final manuscript
Abstract
© 2018 IEEE. Cache partitioning is now available in commercial hardware. In theory, software can leverage cache partitioning to use the last-level cache better and improve performance. In practice, however, current systems implement way-partitioning, which offers a limited number of partitions and often hurts performance. These limitations squander the performance potential of smart cache management. We present KPart, a hybrid cache partitioning-sharing technique that sidesteps the limitations of way-partitioning and unlocks significant performance on current systems. KPart first groups applications into clusters, then partitions the cache among these clusters. To build clusters, KPart relies on a novel technique to estimate the performance loss an application suffers when sharing a partition. KPart automatically chooses the number of clusters, balancing the isolation benefits of way-partitioning with its potential performance impact. KPart uses detailed profiling information to make these decisions. This information can be gathered either offline, or online at low overhead using a novel profiling mechanism. We evaluate KPart in a real system and in simulation. KPart improves throughput by 24% on average (up to 79%) on an Intel Broadwell-D system, whereas prior per-application partitioning policies improve throughput by just 1.7% on average and hurt 30% of workloads. Simulation results show that KPart achieves most of the performance of more advanced partitioning techniques that are not yet available in hardware.
MIT Department
Massachusetts Institute of Technology. Computer Science and Artificial Intelligence Laboratory
Terms of Use
Creative Commons Attribution-Noncommercial-Share Alike
Persistent DSpace Link
DOI of Published Version
https://doi.org/10.1109/hpca.2018.00019