From chaos to QoS: case studies in CMP resource management

  • Authors:
  • Fei Guo;Hari Kannan;Li Zhao;Ramesh Illikkal;Ravi Iyer;Don Newell;Yan Solihin;Christos Kozyrakis

  • Affiliations:
  • North Carolina State University, Raleigh, NC;Stanford University, Stanford, CA;Intel Corporation, Hillsboro, OR;Intel Corporation, Hillsboro, OR;Intel Corporation, Hillsboro, OR;Intel Corporation, Hillsboro, OR;North Carolina State University, Raleigh, NC;Stanford University, Stanford, CA

  • Venue:
  • ACM SIGARCH Computer Architecture News
  • Year:
  • 2007

Quantified Score

Hi-index 0.00

Visualization

Abstract

As more and more cores are enabled on the die of future CMP platforms, we expect that several diverse workloads will run simultaneously on the platform. A key example of this trend is the growth of virtualization usage models. When multiple virtual machines or applications or threads run simultaneously, the quality of service (QoS) that the platform provides to each individual thread is non-deterministic today. This occurs because the simultaneously running threads place very different demands on the shared resources (cache space, memory bandwidth, etc) in the platform and in most cases contend with each other. In this paper, we first present case studies that show how this results in non-deterministic performance. Unlike the compute resources managed through scheduling, platform resource allocation to individual threads cannot be controlled today. In order to provide better determinism and QoS, we then examine resource management mechanisms and present QoS-aware architectures and execution environments. The main contribution of this paper is the architecture feasibility analysis through prototypes that allow experimentation with QoS-Aware execution environments and architectural resources. We describe these QoS prototypes and then present preliminary case studies of multi-tasking and virtualization usage models sharing one critical CMP resource (last-level cache). We then demonstrate how proper management of the cache resource can provide service differentiation and deterministic performance behavior when running disparate workloads in future CMP platforms.