A collaborative memory system for high-performance and cost-effective clustered architectures

  • Authors:
  • Ahmad Samih;Ren Wang;Christian Maciocco;Tsung-Yuan Charlie Tai;Yan Solihin

  • Affiliations:
  • System Architecture Lab, Intel Research Labs, Hillsboro, OR and North Carolina State University, Raleigh, NC;System Architecture Lab, Intel Research Labs, Hillsboro, OR;System Architecture Lab, Intel Research Labs, Hillsboro, OR;System Architecture Lab, Intel Research Labs, Hillsboro, OR;North Carolina State University, Raleigh, NC

  • Venue:
  • Proceedings of the 1st Workshop on Architectures and Systems for Big Data
  • Year:
  • 2011

Quantified Score

Hi-index 0.00

Visualization

Abstract

With the fast development of highly integrated distributed systems (cluster systems), especially those encapsulated within a single platform [28, 9], designers have to face interesting memory hierarchy design choices that attempt to avoid disk storage swapping. Disk swapping activities slow down application execution drastically. Leveraging remote free memory through Memory Collaboration has demonstrated its cost-effectiveness compared to overprovisioning for peak load requirements. Recent studies propose several ways on accessing the under-utilized remote memory in static system configurations, without detailed exploration on the dynamic memory collaboration. Dynamic collaboration is an important aspect given the run-time memory usage fluctuations in clustered systems. In this paper, we propose an Autonomous Collaborative Memory System (ACMS) that manages memory resources dynamically at run time, to optimize performance, and provide QoS measures for nodes engaging in the system. We implement a prototype realizing the proposed ACMS, experiment with a wide range of real-world applications, and show up to 3x performance speedup compared to a non-collaborative memory system, without perceivable performance impact on nodes that provide memory. Based on our experiments, we conduct detailed analysis on the remote memory access overhead and provide insights for future optimizations.