TY - JOUR
T1 - Using Local Cache Coherence for Disaggregated Memory Systems
AU - Calciu, Irina
AU - Imran, M. Talha
AU - Puddu, Ivan
AU - Kashyap, Sanidhya
AU - Al Maruf, Hasan
AU - Mutlu, Onur
AU - Kolli, Aasheesh
N1 - Publisher Copyright:
© 2023 Copyright is held by the owner/author(s).
PY - 2023/6/28
Y1 - 2023/6/28
N2 - Disaggregated memory provides many cost savings and resource provisioning benefits for current datacenters, but software systems enabling disaggregated memory access result in high performance penalties. These systems require intrusive code changes to port applications for disaggregated memory or employ slow virtual memory mechanisms to avoid code changes. Such mechanisms result in high overhead page faults to access remote data and high dirty data amplification when tracking changes to cached data at page-granularity. In this paper, we propose a fundamentally new approach for disaggregated memory systems, based on the observation that we can use local cache coherence to track applications' memory accesses transparently, without code changes, at cache-line granularity. This simple idea (1) eliminates page faults from the application critical path when accessing remote data, and (2) decouples the application memory access tracking from the virtual memory page size, enabling cache-line granularity dirty data tracking and eviction. Using this observation, we implemented a new software runtime for disaggregated memory that improves average memory access time and reduces dirty data amplification1.
AB - Disaggregated memory provides many cost savings and resource provisioning benefits for current datacenters, but software systems enabling disaggregated memory access result in high performance penalties. These systems require intrusive code changes to port applications for disaggregated memory or employ slow virtual memory mechanisms to avoid code changes. Such mechanisms result in high overhead page faults to access remote data and high dirty data amplification when tracking changes to cached data at page-granularity. In this paper, we propose a fundamentally new approach for disaggregated memory systems, based on the observation that we can use local cache coherence to track applications' memory accesses transparently, without code changes, at cache-line granularity. This simple idea (1) eliminates page faults from the application critical path when accessing remote data, and (2) decouples the application memory access tracking from the virtual memory page size, enabling cache-line granularity dirty data tracking and eviction. Using this observation, we implemented a new software runtime for disaggregated memory that improves average memory access time and reduces dirty data amplification1.
UR - http://www.scopus.com/inward/record.url?scp=85164259573&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=85164259573&partnerID=8YFLogxK
U2 - 10.1145/3606557.3606561
DO - 10.1145/3606557.3606561
M3 - Article
AN - SCOPUS:85164259573
SN - 0163-5980
VL - 57
SP - 21
EP - 28
JO - Operating Systems Review (ACM)
JF - Operating Systems Review (ACM)
IS - 1
ER -