Providing QoS with Virtual Private Machines

Preview:

DESCRIPTION

Providing QoS with Virtual Private Machines. Kyle J. Nesbit, James Laudon, and James E. Smith. Motivation for QoS. Multithreaded Chips Resource sharing Higher utilization E.g., Niagara Inter-thread interference Applications Soft real-time applications Cell-phones and game consoles - PowerPoint PPT Presentation

Citation preview

Providing QoS with Virtual Private Machines

Kyle J. Nesbit, James Laudon, and James E. Smith

Motivation for QoS

Multithreaded Chips Resource sharing Higher utilization

E.g., Niagara Inter-thread interference

Applications Soft real-time applications

Cell-phones and game consoles Fine-grain parallel applications

Scheduling and synchronization Server consolidation

Hosting services

QoS Objectives

Isolation Priority Fairness Performance

Objectives are combined E.g., Isolation and performance

QoS Framework

Separation of Objectives, Policies, Mechanisms Well structured solutions

Main Memory (Capacity M)

Memory Controller

Proc. 1

L1 Cache

Interconnect

Proc. 2

L1 Cache

Proc. 3

L1 Cache

Proc. 4

L1 Cache

L2 Cache (Capacity C)

Bandwidth K

Bandwidth L

LocalPolicy

Mechanisms

LocalPolicy

LocalPolicy

GlobalPolicy

Objectives

Local PolicyResource-Directed

IsolationAllocations – Minimum Service

AllocatedConsumed

PriorityVector – Relative Service

Unallocated orUnused

FairnessMultiple Definitions?

Higher PriorityConsumed

Same PriorityUnused

Service

Work ConservingPolicies

Global Policy Virtual Private Machines

Main Memory

Memory Cntl.

L2 Cache (Capacity .5C)

Proc. 1

L1 Cache

VPM 1

Main Memory

Memory Cntl.

L2 Cache (Capacity .1C)

Proc. 2

L1 Cache

VPM 2

BW .5L BW .1L

Main Memory

Memory Cntl.

L2 Cache (Capacity .1C)

Proc. 3

L1 Cache

VPM 3

Main Memory

Memory Cntl.

L2 Cache (Capacity .1C)

Proc. 4

L1 Cache

VPM 4

BW .1L BW .1L

BW .5K BW .1K BW .1K BW .1K

Real-TimeThread

BackgroundThread

BackgroundThread

BackgroundThread

Priority = 0 Priority = 0 Priority = 0

Fairness Policy

Priority = 3

Global PolicyPerformance-Directed

Global optimization problem Use local policies to control resources Optimize one bottleneck and the

bottleneck appears somewhere else Performance-directed policies need to

fit into the VPM policy E.g., optimize aggregate performance

within a priority level

Status

Completed Secondary cache [ISCA ’07] and SDRAM

memory system mechanisms [Micro ‘06] Bandwidth mechanisms Cache capacity mechanisms

Ongoing and Future Work Multithreaded Processors Work conserving cache capacity policy Priority policy Aggregate performance policy

Conclusion

Objectives: Isolation, Priority, Fairness, Performance

Implementation: Separation of policies and mechanisms

Abstraction: Virtual Private Machines Composable global policies that coexist

on a per application basis

Questions and Comments

Do Virtual Private Machines meet all of the requirements of software controlled micro-architecture resource management?

Recommended