NyxCache: Flexible and Efficient Multi-tenant Persistent Memory Caching - Wu, Kan; Tu, Kaiwei; Patel, Yuvraj; Sen, Rathijit; Park, Kwanghyun; C. Arpaci-Dusseau, Andrea; H. Arpaci-Dusseau, Remzi (20th USENIX Conference on File and Storage Technologies, 2022)
We present NyxCache (Nyx), an access regulation framework for multi-tenant persistent memory (PM) caching that supports light-weight access regulation, per-cache resource usage estimation and inter-cache interference analysis. With these mechanisms and existing admission control and capacity allocation logic, we build important sharing policies such as resource-limiting, QoS-awareness, fair slowdown, and proportional sharing: Nyx resource-limiting can accurately limit PM usage of each cache, providing up to 5x better performance isolation than a bandwidth-limiting method. Nyx QoS can provide QoS guarantees to latency-critical caches while providing higher throughput (up to 6x vs. previous DRAM-based approaches) to best-effort caches that are not interfering. Finally, we show that Nyx is useful for realistic workloads, isolating write-spikes and ensuring that important caches are not slowed down by increased best-effort traffic.