gideon gerzon - intel developer zone · 17/04/2007  · 16 copyright ©2007, intel corporation. all...

53
1 Copyright © 2007, Intel Corporation. All rights reserved. Intel® Virtualization Technology Processor Virtualization Extensions and Intel® Trusted execution Technology Gideon Gerzon Senior Processor Architect, Intel Mobile Group

Upload: others

Post on 01-Oct-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Gideon Gerzon - Intel Developer Zone · 17/04/2007  · 16 Copyright ©2007, Intel Corporation. All rights reserved. Intel®VT FlexPriority • Intel®VT FlexPriority improves VM

1Copyright © 2007, Intel Corporation. All rights reserved.

Intel® Virtualization Technology Processor Virtualization

Extensions and Intel® Trusted execution Technology

Gideon Gerzon

Senior Processor Architect, Intel Mobile Group

Page 2: Gideon Gerzon - Intel Developer Zone · 17/04/2007  · 16 Copyright ©2007, Intel Corporation. All rights reserved. Intel®VT FlexPriority • Intel®VT FlexPriority improves VM

2Copyright © 2007, Intel Corporation. All rights reserved.

• Virtualization Basics

•Emerging Usage Models

•Virtualization Challenges

• The Intel Approach to Virtualization

• Intel® Virtualization Technology & its Evolution

• Intel® VT Processor Extensions

• Intel® VT FlexPriority

• Intel® VT FlexMigration

• Intel® VT Extended Page Tables

• Intel® VT Virtual Processor ID

• Virtualization Performance Primer

•The cost & The count of Overhead inducing factors

• The Intel Advantage

• Intel® Trusted Execution Technology (TXT)

Agenda

Page 3: Gideon Gerzon - Intel Developer Zone · 17/04/2007  · 16 Copyright ©2007, Intel Corporation. All rights reserved. Intel®VT FlexPriority • Intel®VT FlexPriority improves VM

3Copyright © 2007, Intel Corporation. All rights reserved.

TimeTime

Workstation Consolidation without compromise on graphics performance

MultiMulti--OS OS

WorkstationWorkstation

OS and HW freedom for mission critical applications

Mainframe Mainframe

MigrationMigration

Maintain high levels of business continuity

High High

Availability/ Availability/

Disaster Disaster

RecoveryRecovery

Reduce OpEx, streamline resource utilization balancing real-time computing demands with capacity

Reduce CapEx, increase utilization

End UserEnd User

ValueValue

Static Server Static Server

ConsolidationConsolidationDynamic Dynamic

Load Load

BalancingBalancing

Today’s Virtualization Usage Models

HWHWVMMVMM

OSOS

AppApp

HWHWVMMVMM

OSOS

AppApp

HWHWVMMVMM

OSOS

AppApp

HWHWVMMVMM

OSOS

AppApp

OSOS

AppApp

OSOS

AppApp

HWHWVMMVMM

OSOS

AppApp

OSOS

AppApp

HWHWVMMVMM

OSOS

AppApp

OSOS

AppApp

HWHWVMMVMM

OSOS

AppApp

OSOS

AppApp

Beyond basic static consolidation, focus is on high Beyond basic static consolidation, focus is on high

availability and efficient resource allocationavailability and efficient resource allocation

OSOS

AppApp

44

HWHWVMMVMM

OSOS

AppApp

OSOS

AppApp

OSOS

AppApp

Page 4: Gideon Gerzon - Intel Developer Zone · 17/04/2007  · 16 Copyright ©2007, Intel Corporation. All rights reserved. Intel®VT FlexPriority • Intel®VT FlexPriority improves VM

4Copyright © 2007, Intel Corporation. All rights reserved.

VirtualizationThe Intel Connection

Realizing the promise of virtualization requires a multi-faceted approach

Hardware

- Intel architects processors, chipsets and communications components to support a completevirtualization solution

Software

- Intel’s SW Solutions Group aligns with key VMM & manageability vendors for optimized solutions on IA

The End User

- Understand the needs and constraints in IT virtualization and architect enhancements that enable those solutions

Page 5: Gideon Gerzon - Intel Developer Zone · 17/04/2007  · 16 Copyright ©2007, Intel Corporation. All rights reserved. Intel®VT FlexPriority • Intel®VT FlexPriority improves VM

5Copyright © 2007, Intel Corporation. All rights reserved.

Intel® Virtualization Technology

IntelIntel®® Virtualization Technology (IntelVirtualization Technology (Intel®® VT) is a VT) is a multimulti--

generational roadmapgenerational roadmap of increasingly powerful of increasingly powerful

enhancements to Intel Processors, Chipsets and I/O enhancements to Intel Processors, Chipsets and I/O

devicesdevices. It is a complementary technology to . It is a complementary technology to

virtualization software products that virtualization software products that enhances todayenhances today’’s s

virtualization solutions and lays foundation for future virtualization solutions and lays foundation for future

platform virtualizationplatform virtualization. Intel. Intel®® VT provides hardwareVT provides hardware--

assist to the virtualization software assist to the virtualization software reducing its size reducing its size

and complexity enabling lower cost, more efficient, and complexity enabling lower cost, more efficient,

more powerful virtualization solutionsmore powerful virtualization solutions. .

Throughout this package:VT-x refers to Intel® VT for IA-32 and Intel® 64VT-i refers to the Intel® VT for Itanium® ArchitectureVT-d refers to Intel® VT for Directed I/OVT-c refers to Intel® VT for Connectivity

Page 6: Gideon Gerzon - Intel Developer Zone · 17/04/2007  · 16 Copyright ©2007, Intel Corporation. All rights reserved. Intel®VT FlexPriority • Intel®VT FlexPriority improves VM

6Copyright © 2007, Intel Corporation. All rights reserved.

Intel® Virtualization Technology Evolution

Software-only VMMsBinary translationParavirtualizationDevice emulations

Simpler and more secure VMM through use of hardware VT support

Better IO/CPU perf and functionality via hardware-mediated access to memory

•Assists for IO sharing:• PCI IOV compliant devs• VMDq: Multi-context IO• End-point DMA translation caching• IO virtualization assists

Richer IO-device functionality and IO resource sharing

Core support for IO robustness & performance via DMAremapping

Richer/faster: Intel VT FlexPriority, FlexMigrationEPT, VPID, ECRR, APIC-V

Close basic processor “virtualization holes” in Intel® 64 & Itanium CPUs

Perf improvements for interrupt intensive env, faster VM boot

Interrupt filtering & remapping VT-d extensions to track PCI-SIG IOV

VT-x/i VT-x2/i2

VT-d

VT-x3/i3

VT-d2

VT-c

VMM software evolution over time with hardware supp ortVMM software evolution over time with hardware supp ort

VMMSoftwareEvolution

Vector 3:IO Device Focus

Vector 1:Vector 1:Processor Focus

Vector 2:Chipset Focus

Past 2005 2010

All timeframes, dates, and products are subject to change without further notification

Page 7: Gideon Gerzon - Intel Developer Zone · 17/04/2007  · 16 Copyright ©2007, Intel Corporation. All rights reserved. Intel®VT FlexPriority • Intel®VT FlexPriority improves VM

7Copyright © 2007, Intel Corporation. All rights reserved.

VM0

WinXP

Apps

VMn

Linux

Apps

CPUn

Processorswith

VT-x (or VT-i)

VT-x

CPU0

CPU Virtualization with VT-x

Ring 3

Ring 0

VMXRootMode H/W VM Control

Structure (VMCS)

VMM

Memory and I/OVirtualization

VMEntry

VMExit

Guest OSes run at intended rings

VMCSConfiguration

IntelIntel®® VT RoadmapVT Roadmap

New CPU Operating Mode• VMX Root Operation (for VMM)• Non-Root Operation (for Guest)• Eliminates ring deprivileging

New Transitions• VM entry to guest OS• VM exit to VMMVM Control Structure (VMCS)• Configured by VMM software• Specifies guest OS state• Controls when VM exits occur (eliminates over and under exiting)

• Supports on-die CPU state caching

Page 8: Gideon Gerzon - Intel Developer Zone · 17/04/2007  · 16 Copyright ©2007, Intel Corporation. All rights reserved. Intel®VT FlexPriority • Intel®VT FlexPriority improves VM

8Copyright © 2007, Intel Corporation. All rights reserved.

CPU Virtualization with VT-x

• Intel® Virtualization Technology present on Intel processors, enables a new privilege space where the VMM software can operate. It reduces the size and complexity of the VMM software improving its efficiency and enabling greater functionality.

VMX Non-Root

VMX Root

- Improves efficiency by reducing the need for VMM interventions with complex, compute intensive software translations

- Enables greater functionality by allowing guest operating systems to run directly on the hardware avoiding the need to modify them

• Initially shipped in 2005 and now available across processor families from clients to servers.

Page 9: Gideon Gerzon - Intel Developer Zone · 17/04/2007  · 16 Copyright ©2007, Intel Corporation. All rights reserved. Intel®VT FlexPriority • Intel®VT FlexPriority improves VM

9Copyright © 2007, Intel Corporation. All rights reserved.

Pre & Post Intel VT-x

� VMM has its own privileged level where it executes

� No need to de-privilege the guest OS

� OSes run directly on the hardware

� VMM de-privileges the guest OS into Ring 1, and takes up Ring 0

� OS un-aware it is not running in traditional ring 0 privilege

� Requires compute intensive SW translation to mitigate

Ring 1

Ring 3

Ring 0

VM1 VMn

Shared Physical Hardware

Virtual Machine Monitor

OSOS

AppApp

OSOS

AppApp

Shared Physical Hardware

Intel® Virtualization Technology

Ring 0

Ring 3

VMX Root

VM1 VMn

Virtual Machine Monitor

OSOS

AppApp

OSOS

AppApp

Page 10: Gideon Gerzon - Intel Developer Zone · 17/04/2007  · 16 Copyright ©2007, Intel Corporation. All rights reserved. Intel®VT FlexPriority • Intel®VT FlexPriority improves VM

10Copyright © 2007, Intel Corporation. All rights reserved.

Host (or Service)

Operating System

Hypervisor

VM0

APIC

VMN…

Page

Tables

NICDisk

Gfx

CPU

Device

Drivers

Physical

IO Devices

IO-Device

Models

NICDisk Gfx

Guest OS0 Guest OS1

Virtualization Performance Overhead

- Performance overheads arise from “exits” from guest OS to VMM

- Events that cause exits to VMM:1. Access to privileged CPU state2. Interrupt virtualization3. Page-table virtualization4. IO-device virtualization

- Each event has a cost:� CPU cycles to exit to and

return from VMM� Time spent in event handler� Microarchitectural effects

(TLB/Cache misses)- Two ways to optimize

performance:� Reducing event counts due to

(1) - (4)� And/Or, reducing event costs

(e.g., transition times, handler costs)

1

3

A Simple Performance Model

Cycle Overhead =

Σ (event_counti x event_costi)

4IO-Device

Accesses

2

Page 11: Gideon Gerzon - Intel Developer Zone · 17/04/2007  · 16 Copyright ©2007, Intel Corporation. All rights reserved. Intel®VT FlexPriority • Intel®VT FlexPriority improves VM

11Copyright © 2007, Intel Corporation. All rights reserved.

Next-generation VT-x Features

1st generation of Intel® VT shipped in 2005- Several extensions to VT-x since that time…

On-going microarchitectural enhancements- Reductions in VM entry/exit latencies

- No VMM software changes required

Architectural extensions- VM Migration Support (FlexMigration)

- APIC Interrupt Virtualization Support (FlexPriority)

- Extended Page Tables (EPT)

- Virtual Processor IDs (VPID)

Page 12: Gideon Gerzon - Intel Developer Zone · 17/04/2007  · 16 Copyright ©2007, Intel Corporation. All rights reserved. Intel®VT FlexPriority • Intel®VT FlexPriority improves VM

12Copyright © 2007, Intel Corporation. All rights reserved.

Intel® VT-x Transition Latencies by CPU

0

1000

2000

3000

4000

5000

6000

7000

2004 Intel® Xeon®Family Processor

2005 Intel® Xeon®Family Processor

2006 Intel® Xeon®Family Processor

2007 Intel® Xeon®Family Processor

2008 Intel® Xeon®Family Processor

Ope

ratio

n L

aten

cy (

in c

ycle

s) TLB After-effects

VMRESUME

VMREADs

VM Exit

VMX Transition and Instruction Latency

Improvements are dramatic and continuing

Latency Reductions by CPU Implementation

• Further improvements planned for future implementations

‡ Measurements based on microbenchmark tests of VM entry / exit times on different Intel®VT implementations. Actual performance may vary (e.g., based on CPU freq).

Page 13: Gideon Gerzon - Intel Developer Zone · 17/04/2007  · 16 Copyright ©2007, Intel Corporation. All rights reserved. Intel®VT FlexPriority • Intel®VT FlexPriority improves VM

13Copyright © 2007, Intel Corporation. All rights reserved.

• Intel® VT FlexPriority

• Intel® VT FlexMigration

• Intel® VT Extended Page Tables

• Intel® VT Virtual Processor ID

Intel® Virtualization TechnologyProcessor Extensions

Intel® Virtualization TechnologyProcessor Extensions

Architectural enhancements geared to delivering

more powerful virtualization solutions

Page 14: Gideon Gerzon - Intel Developer Zone · 17/04/2007  · 16 Copyright ©2007, Intel Corporation. All rights reserved. Intel®VT FlexPriority • Intel®VT FlexPriority improves VM

14Copyright © 2007, Intel Corporation. All rights reserved.

Background: APIC Architecture and Usage� The Advanced Programmable Interrupt Controller (APIC)

- A per-CPU interrupt controller with many control registers

- Important register for this discussion: the task-priority register (TPR)

- TPR used to mask interrupts based on priority of currently executing process

� TPR is accessed in two ways:- CR8 processor register (only available in 64-bit operating mode)

- Memory-mapped register access

� Usage Patterns:- 64-bit OSes use CR8 to access

- 32-bit OSes uses memory-mapped interface

- Some OSes access the TPR with high frequency

Page 15: Gideon Gerzon - Intel Developer Zone · 17/04/2007  · 16 Copyright ©2007, Intel Corporation. All rights reserved. Intel®VT FlexPriority • Intel®VT FlexPriority improves VM

15Copyright © 2007, Intel Corporation. All rights reserved.

Background: Virtualization of the APIC� First generation Intel® VT provides support for CR8 virtualization

� With first generation Intel® VT, VMMs supporting use of memory-mapped TPR by guest OSes:

- use binary patching or translation; avoids VMX transitions

- disallow access to the TPR through active page tables, causing VM exit on access

� Significant performance and/or complexity issue without new hardware support…

Page 16: Gideon Gerzon - Intel Developer Zone · 17/04/2007  · 16 Copyright ©2007, Intel Corporation. All rights reserved. Intel®VT FlexPriority • Intel®VT FlexPriority improves VM

16Copyright © 2007, Intel Corporation. All rights reserved.

Intel® VT FlexPriority

• Intel® VT FlexPriority improves VM access to Task Priority Register • Eliminates VMM intercepts of guest

access to the TPR by enabling guests to access shadow register initialized by the VMM

• Feature Optimizes and accelerates interrupt virtualization on 32-bit guests• Up to 40% faster boot time with 32-

bit Windows* XP guests• Up to 35% performance gain on

guests running 32-bit Windows Server 2000 & 2003 SP1 versions

• Compares performance of Quad-Core Intel® Xeon® processor X7350 based server with Intel® VT FlexPriority ON & OFF configurations• Virtual Iron* 4.0.2 software• vConsolidate benchmark Beta 2

• Performance improvement enables efficient SMP configurations of 32-bit guest operating systems

* All measurements conducted on platforms running 4xIntel® Xeon®Processor X7350, 32GB memory, vConsolidate ver 1.0, Virtual Iron4.0.2 software. 1 CSU configuration, Sept 2007. Boot time improvement measured on Windows XP. vConsolidate measurement conducted by configuring the system with Windows 2000 SP4

1.00

1.35

Intel® VT FlexPriority

OFF

Intel® VT FlexPriority

ON

Higher is better

Benefits of IntelBenefits of Intel ®® VT FlexPriorityVT FlexPriority --Virtual Iron* 4.0.2 on vConsolidateVirtual Iron* 4.0.2 on vConsolidate

1.35x

Higher performance due to improved Interrupt handling

Quad-Core Intel® Xeon® X7350

Performance tests and ratings are measured using specific computer systems and/or components and reflect the approximate performance of Intel products as measured by those tests. Any difference in system hardware or software design or configuration may affect actual performance. Buyers should consult other sources of information to evaluate the performance of systems or components they are considering purchasing. For more information on performance tests and on the performance of Intel products, visit http://www.intel.com/performance/resources/limits.htm or call (U.S.) 1-800-628-8686 or 1-916-356-3104. Copyright © 2006-2007, Intel Corporation. * Other names and brands may be claimed as the property of others.

ON vs. OFF comparison using Virtual Iron 4.0.2 on vConsolidate

Page 17: Gideon Gerzon - Intel Developer Zone · 17/04/2007  · 16 Copyright ©2007, Intel Corporation. All rights reserved. Intel®VT FlexPriority • Intel®VT FlexPriority improves VM

17Copyright © 2007, Intel Corporation. All rights reserved.

• Intel® VT FlexPriority

• Intel® VT FlexMigration

• Intel® VT Extended Page Tables

• Intel® VT Virtual Processor ID

Intel® Virtualization TechnologyProcessor Extensions

Intel® Virtualization TechnologyProcessor Extensions

Architectural enhancements geared to delivering

more powerful virtualization solutions

Page 18: Gideon Gerzon - Intel Developer Zone · 17/04/2007  · 16 Copyright ©2007, Intel Corporation. All rights reserved. Intel®VT FlexPriority • Intel®VT FlexPriority improves VM

18Copyright © 2007, Intel Corporation. All rights reserved.

Intel® VT FlexMigrationLive Migration Challenges

• Live VM migration tools from any VMV require source and destination compatibility

• Applications may expect exact same behavior for machine instructions between the ‘To’ & ‘From’ platforms

- Constraint exacerbated by innovation and introduction of new machine instructions

• Intel® VT FlexMigration allows VMM software to report the lowest common denominator of instructions set to the applications thereby broadening the live migration compatibility pool across generations of Intel processors

IT Investment Protection with Expanding Pools of IT Investment Protection with Expanding Pools of

Hardware Assisted Live VM Migration CompatibilityHardware Assisted Live VM Migration Compatibility

Page 19: Gideon Gerzon - Intel Developer Zone · 17/04/2007  · 16 Copyright ©2007, Intel Corporation. All rights reserved. Intel®VT FlexPriority • Intel®VT FlexPriority improves VM

19Copyright © 2007, Intel Corporation. All rights reserved.

• Intel® VT FlexPriority

• Intel® VT FlexMigration

• Intel® VT Extended Page Tables

• Intel® VT Virtual Processor ID

Intel® Virtualization TechnologyProcessor Extensions

Intel® Virtualization TechnologyProcessor Extensions

Architectural enhancements geared to delivering

more powerful virtualization solutions

Page 20: Gideon Gerzon - Intel Developer Zone · 17/04/2007  · 16 Copyright ©2007, Intel Corporation. All rights reserved. Intel®VT FlexPriority • Intel®VT FlexPriority improves VM

20Copyright © 2007, Intel Corporation. All rights reserved.

Extended Page Tables: Motivation

� VMM needs to retain control of physical-address space

- With Intel® 64, paging is main mechanism for protecting that space

- Intel® VT provides hooks for page-table virtualization…

- … but page-table virtualization in software is a major source of overhead

� Extended Page Tables (EPT)

- A new CPU mechanism for remapping guest-physical memory references

- Allows guest to retain control of legacy Intel® 64 paging

- Reduces frequency of VM exits to VMM

Page 21: Gideon Gerzon - Intel Developer Zone · 17/04/2007  · 16 Copyright ©2007, Intel Corporation. All rights reserved. Intel®VT FlexPriority • Intel®VT FlexPriority improves VM

21Copyright © 2007, Intel Corporation. All rights reserved.

EPT: Overview

� Guest can have full control over Intel® 64 page tables / events- CR3, CR0, CR4 paging bits, INVLPG, page fault

� VMM controls Extended Page Tables

� CPU uses both tables

� EPT (optionally) activated on VM entry- When EPT active, EPT base pointer (loaded on VM entry from VMCS) points to extended page tables

- EPT deactivated on VM exit

GuestIntel® 64

PageTables

Guest Linear AddressGuest Physical Address Extended

PageTables

Host Physical Address

EPT Base PointerCR3

Page 22: Gideon Gerzon - Intel Developer Zone · 17/04/2007  · 16 Copyright ©2007, Intel Corporation. All rights reserved. Intel®VT FlexPriority • Intel®VT FlexPriority improves VM

22Copyright © 2007, Intel Corporation. All rights reserved.

EPT Translation: Details

� All guest-physical addresses go through extended page tables

- Includes address in CR3, address in PDE, address in PTE, etc.

� Example given is for basic 32-bit paging

- Also applies to other paging modes (e.g., PAE and Intel® 64)

� At leaf, Intel® 64 page faults recognized before EPT violations

Page 23: Gideon Gerzon - Intel Developer Zone · 17/04/2007  · 16 Copyright ©2007, Intel Corporation. All rights reserved. Intel®VT FlexPriority • Intel®VT FlexPriority improves VM

23Copyright © 2007, Intel Corporation. All rights reserved.

EPT Performance

� Estimated EPT benefit is very dependent on workload- Typical benefit estimated up to 20%1

- Outliers exist (e.g., forkwait, Cygwin gcc, > 40%)

- Benefit increases with number of virtual CPUs (relative to MP page table virtualization algorithm)

� Secondary benefits of EPT:- No need for complex page table virtualization algorithm

- Reduced memory footprint compared with shadow page-table algorithms� Shadow page tables required for each guest user process� Single EPT supports entire VM

1Data derived from Intel internal simulation and modeling tools

EPT improves memory virtualization performance

Page 24: Gideon Gerzon - Intel Developer Zone · 17/04/2007  · 16 Copyright ©2007, Intel Corporation. All rights reserved. Intel®VT FlexPriority • Intel®VT FlexPriority improves VM

24Copyright © 2007, Intel Corporation. All rights reserved.

• Intel® VT FlexPriority

• Intel® VT FlexMigration

• Intel® VT Extended Page Tables

• Intel® VT Virtual Processor ID

Intel® Virtualization TechnologyProcessor Extensions

Intel® Virtualization TechnologyProcessor Extensions

Architectural enhancements geared to delivering

more powerful virtualization solutions

Page 25: Gideon Gerzon - Intel Developer Zone · 17/04/2007  · 16 Copyright ©2007, Intel Corporation. All rights reserved. Intel®VT FlexPriority • Intel®VT FlexPriority improves VM

25Copyright © 2007, Intel Corporation. All rights reserved.

VPID: Motivation

� First generation of Intel® VT forces flush of Translation Lookaside Buffer (TLB) on each VMX transition

� Performance loss on all VM exits

� Performance loss on most VM entries

- Most of the time, the VMM has not modified the guest page tables and does not require TLB flushing to occur

- Exceptions include emulating MOV CR3, MOV CR4, INVLPG

- Better VMM software control of TLB flushes is beneficial

Page 26: Gideon Gerzon - Intel Developer Zone · 17/04/2007  · 16 Copyright ©2007, Intel Corporation. All rights reserved. Intel®VT FlexPriority • Intel®VT FlexPriority improves VM

26Copyright © 2007, Intel Corporation. All rights reserved.

VPID: New Support for Software Control of TLB� VPID activated if new “enable VPID” control bit is set in VMCS

� New 16-bit virtual-processor-ID field (VPID) field in VMCS- VMM allocates unique value for each guest OS

- VMM uses VPID of 0x0000, no guest can have this VPID

� Cached linear translations are tagged with VPID value

� No flush of TLBs on VM entry or VM exit if VPID active

Page 27: Gideon Gerzon - Intel Developer Zone · 17/04/2007  · 16 Copyright ©2007, Intel Corporation. All rights reserved. Intel®VT FlexPriority • Intel®VT FlexPriority improves VM

27Copyright © 2007, Intel Corporation. All rights reserved.

VPID Performance

� VPID benefit is very dependent on workload and memory virtualization mechanism

� Without EPT:- Most stressful of CPU-intensive workloads (e.g., gzip) show only small improvements with VPID

- Process and memory-intensive workloads gain an estimated 1.5% - 2%1

- Worst-case synthetic benchmarks gain an estimated 3%-4%1

� With EPT:- VM-exit frequency decreases but the cost of TLB fills increases- VPIDs required to make EPT effective under stressful loads

- For process/memory-intensive workloads gain an estimated >2%1

- Worst-case synthetic benchmarks gain an estimated 10%-15%1

1Data derived from Intel internal simulation and modeling tools

VPID improves TLB performance

with small VMM development effort

Page 28: Gideon Gerzon - Intel Developer Zone · 17/04/2007  · 16 Copyright ©2007, Intel Corporation. All rights reserved. Intel®VT FlexPriority • Intel®VT FlexPriority improves VM

28Copyright © 2007, Intel Corporation. All rights reserved.

VT-d Overview

VT-d is platform infrastructure for I/O virtualization

- Defines an architecture for DMA and interrupt remapping

- Implemented as part of core logic chipset

- Will be supported broadly in Intel server and client chipsets

CPU CPU

DRAM

South Bridge

System Bus

PCI Express

PCI, LPC, Legacy devices, …

IntegratedDevices

North Bridge

VT-dPCIe* Root Ports

*Other names and brands may be claimed as the property of others

Page 29: Gideon Gerzon - Intel Developer Zone · 17/04/2007  · 16 Copyright ©2007, Intel Corporation. All rights reserved. Intel®VT FlexPriority • Intel®VT FlexPriority improves VM

29Copyright © 2007, Intel Corporation. All rights reserved.

Intel VT for Directed I/O - Protection: Reliability & Security thru device isolation

Virtual Machine Monitor (VMM)

Phys MemIO Devices

VirtualMachines

Hardware DMA RemapMechanisms under

VMM Control

Device Driver

VT-d

Page 30: Gideon Gerzon - Intel Developer Zone · 17/04/2007  · 16 Copyright ©2007, Intel Corporation. All rights reserved. Intel®VT FlexPriority • Intel®VT FlexPriority improves VM

30Copyright © 2007, Intel Corporation. All rights reserved.

Remapping Benefits for Native OS, VMM

1. Protection:

• Enhance security and reliability through device isolation

• End to end isolation from VM to devices

2. Performance:

• Allows I/O devices to be directly assigned to specific virtual machines

• Eliminate Bounce buffer conditions with 32-bit devices

3. Efficiency:

• Interrupt isolation and load balancing

• System scalability with extended xAPIC support

4. Core platform infrastructure for Single Root IOV

Protection, Performance, and Efficiency

Page 31: Gideon Gerzon - Intel Developer Zone · 17/04/2007  · 16 Copyright ©2007, Intel Corporation. All rights reserved. Intel®VT FlexPriority • Intel®VT FlexPriority improves VM

31Copyright © 2007, Intel Corporation. All rights reserved.

VT Summary

• Virtualization implementations extend beyond basic static server consolidation, focus is on high availability and efficient resource allocation

• Intel offers Intel® Virtualization Technology with processor, chipset and IO ingredients that enhance today’s virtualization solutions and lays foundation for future platform virtualizationthat enable new usage models

• Today’s virtualization solutions benefit from Intel® VT through extended capabilities and improved efficiency. These solutions will further benefit from continuous improvements yet to come—improvements that will optimize and accelerate virtualization solutions on Intel Architecture

• Overall Platform Performance Matters. This comes from micro-architectural improvements (e.g. Intel® CoreTM) and architectural improvements (e.g. Intel® I/OAT, VMDq)

• Intel has a solid roadmap for processor innovation as well as virtualization architectural enhancements that are geared to delivering more powerful virtualization solutions with near native performance

Page 32: Gideon Gerzon - Intel Developer Zone · 17/04/2007  · 16 Copyright ©2007, Intel Corporation. All rights reserved. Intel®VT FlexPriority • Intel®VT FlexPriority improves VM

32Copyright © 2007, Intel Corporation. All rights reserved.

Intel Advantage in virtualization

IntelIntel®® VT for Directed I/O (Chipset)VT for Directed I/O (Chipset)Reliability and Security through device Isolation

I/O performance with direct assignment

IntelIntel®® VT for Connectivity (Device)VT for Connectivity (Device)NIC Enhancement with VMDqNIC Enhancement with VMDqNIC Enhancement with VMDqNIC Enhancement with VMDqSingle Root IOV SupportSingle Root IOV SupportSingle Root IOV SupportSingle Root IOV SupportNetwork Performance and reduced CPU utilization

IntelIntelIntelIntel®®®® I/OAT for virtualizationI/OAT for virtualizationI/OAT for virtualizationI/OAT for virtualizationLower CPU Overhead and Data Acceleration

IntelIntel®® VTVT--x / VTx / VT--i (Processor)i (Processor)Hardware assists for robust and simpler virtualization

IntelIntelIntelIntel®®®® VT FlexPriority VT FlexPriority VT FlexPriority VT FlexPriority ---- Interrupt AccelerationIntelIntelIntelIntel®®®® VT FlexMigration VT FlexMigration VT FlexMigration VT FlexMigration –––– Flexible live Migration

QuadQuad--Core (Processor)Core (Processor)Unrivaled energy efficient native performance

Network

Chipset

Processor

IOV PCIIOV PCI--SIG* ParticipationSIG* Participation

Page 33: Gideon Gerzon - Intel Developer Zone · 17/04/2007  · 16 Copyright ©2007, Intel Corporation. All rights reserved. Intel®VT FlexPriority • Intel®VT FlexPriority improves VM

33Copyright © 2007, Intel Corporation. All rights reserved.

Intel® Trusted Execution Technology (TXT) Technical Overview

� Domain isolation

� MLE Identity

- OS or VMM

� DMA protection

� Control of configuration Measured Launched Environment

(MLE)

App or VM App or VM

Hardware

CPU TPM Chipset

Page 34: Gideon Gerzon - Intel Developer Zone · 17/04/2007  · 16 Copyright ©2007, Intel Corporation. All rights reserved. Intel®VT FlexPriority • Intel®VT FlexPriority improves VM

34Copyright © 2007, Intel Corporation. All rights reserved.

Hardware

Software Validation

Software Execution

Hardware command, GETSEC [SENTER], provides synchronization, special bus cycles, and a special environment

Hardware validates the software that is capable of validating platform configuration and performing the MLE measurement

After validation the software performs the platform validation and MLE measurement

Obtaining MLE Identity Obtaining MLE Identity

Page 35: Gideon Gerzon - Intel Developer Zone · 17/04/2007  · 16 Copyright ©2007, Intel Corporation. All rights reserved. Intel®VT FlexPriority • Intel®VT FlexPriority improves VM

35Copyright © 2007, Intel Corporation. All rights reserved.

Control Points

Memory

SINIT ACM

MLE

MLE

MLE

� Establish special environment

� Load SINIT and MLE into memory

� Invoke GETSEC [SENTER]

� Load SINIT into ACEA

� Validate SINIT digital signature

�a Store SINIT identity in TPM

� SINIT measures MLE in memory

CPU

ACEA

SINIT ACM

SINIT ACM

�a Store MLE identity in TPM

SINIT passes control to MLE

�a�a

Page 36: Gideon Gerzon - Intel Developer Zone · 17/04/2007  · 16 Copyright ©2007, Intel Corporation. All rights reserved. Intel®VT FlexPriority • Intel®VT FlexPriority improves VM

36Copyright © 2007, Intel Corporation. All rights reserved.

NetworkNetwork

IT ConsoleIT ConsoleTrustedTrustedUserUser

CPUCPU

TPMTPM

TPMTPMBIOSBIOS

PeripheralsPeripherals MCH/ICHMCH/ICHMemoryMemory

GraphicsGraphics

HypervisorHypervisor

OS/ServiceOS/Service

AppsApps

Business Client PCBusiness Client PC Platform TechnologiesPlatform Technologies

Verified Client Launch Verified Client Launch

(TXT)(TXT)

Agent S/W PresenceAgent S/W Presence

Data Encryption Data Encryption

(Danbury)(Danbury)

Client Virtualization Client Virtualization

(VT/VT(VT/VT--d)d)

EncryptionEncryption

(AES(AES--NI)NI)

PC System DefensePC System Defense

Trusted Platform Trusted Platform

Module (TPM)Module (TPM)

Remote IT SecurityRemote IT Security

Platform Security TechnologiesPlatform Security Technologies

Page 37: Gideon Gerzon - Intel Developer Zone · 17/04/2007  · 16 Copyright ©2007, Intel Corporation. All rights reserved. Intel®VT FlexPriority • Intel®VT FlexPriority improves VM

37Copyright © 2007, Intel Corporation. All rights reserved.

Additional information sources:

� For specifications and to learn more

- Intel® VT Web Site:

- http://www.intel.com/technology/platform-technology/virtualization/

- Intel Virtualization Software Community:

- http://www.intel.com/software/virtualization

- Intel® Trusted Execution Technology (TXT)

- http://www.intel.com/security

- http://www.microsoft.com/security

Page 38: Gideon Gerzon - Intel Developer Zone · 17/04/2007  · 16 Copyright ©2007, Intel Corporation. All rights reserved. Intel®VT FlexPriority • Intel®VT FlexPriority improves VM

38Copyright © 2007, Intel Corporation. All rights reserved.

Risk FactorsThis presentation contains forwardThis presentation contains forward--looking statements. All looking statements. All

statements made that are not historical facts are subject to a statements made that are not historical facts are subject to a

number of risks and uncertainties, and actual results may differnumber of risks and uncertainties, and actual results may differ

materially. Please refer to materially. Please refer to our most recent Earnings Release our most recent Earnings Release

and our most recent Form 10and our most recent Form 10--Q or 10Q or 10--K filing available on our K filing available on our

website for more information on the risk factors that could website for more information on the risk factors that could

cause actual results to differ.cause actual results to differ.

Rev. 4/17/07

Page 39: Gideon Gerzon - Intel Developer Zone · 17/04/2007  · 16 Copyright ©2007, Intel Corporation. All rights reserved. Intel®VT FlexPriority • Intel®VT FlexPriority improves VM

39Copyright © 2007, Intel Corporation. All rights reserved.

Legal Disclaimer� INFORMATION IN THIS DOCUMENT IS PROVIDED IN CONNECTION WITH INTEL® PRODUCTS. NO LICENSE,

EXPRESS OR IMPLIED, BY ESTOPPEL OR OTHERWISE, TO ANY INTELLECTUAL PROPERTY RIGHTS IS GRANTED BY THIS DOCUMENT. EXCEPT AS PROVIDED IN INTEL’S TERMS AND CONDITIONS OF SALE FOR SUCH PRODUCTS, INTEL ASSUMES NO LIABILITY WHATSOEVER, AND INTEL DISCLAIMS ANY EXPRESS OR IMPLIED WARRANTY, RELATING TO SALE AND/OR USE OF INTEL® PRODUCTS INCLUDING LIABILITY OR WARRANTIES RELATING TO FITNESS FOR A PARTICULAR PURPOSE, MERCHANTABILITY, OR INFRINGEMENT OF ANY PATENT, COPYRIGHT OR OTHER INTELLECTUAL PROPERTY RIGHT. INTEL PRODUCTS ARE NOT INTENDED FOR USE IN MEDICAL, LIFE SAVING, OR LIFE SUSTAINING APPLICATIONS.

� Intel may make changes to specifications and product descriptions at any time, without notice.

� All products, dates, and figures specified are preliminary based on current expectations, and are subject to change without notice.

� Intel, processors, chipsets, and desktop boards may contain design defects or errors known as errata, which may cause the product to deviate from published specifications. Current characterized errata are available on request.

� Performance tests and ratings are measured using specific computer systems and/or components and reflect the approximate performance of Intel products as measured by those tests. Any difference in system hardware or software design or configuration may affect actual performance.

� Intel, Intel Inside, Merom, Penryn, Nehalem, Dunnington, Harpertown, Yorkfield and the Intel logo are trademarks of Intel Corporation in the United States and other countries.

� *Other names and brands may be claimed as the property of others.

� Copyright © 2007 Intel Corporation.

Page 40: Gideon Gerzon - Intel Developer Zone · 17/04/2007  · 16 Copyright ©2007, Intel Corporation. All rights reserved. Intel®VT FlexPriority • Intel®VT FlexPriority improves VM
Page 41: Gideon Gerzon - Intel Developer Zone · 17/04/2007  · 16 Copyright ©2007, Intel Corporation. All rights reserved. Intel®VT FlexPriority • Intel®VT FlexPriority improves VM

© 2007 Intel Corporation

Backup Foils

Page 42: Gideon Gerzon - Intel Developer Zone · 17/04/2007  · 16 Copyright ©2007, Intel Corporation. All rights reserved. Intel®VT FlexPriority • Intel®VT FlexPriority improves VM

42Copyright © 2007, Intel Corporation. All rights reserved.

Without hardware support

What the VMM Does …

• Emulates a complete hardware environment for every Virtual Machine

• Allocates platform resources

• Isolates execution in each virtual machine

VM1 VMn

Shared Physical Hardware

Memory

KY/MS

Graphics

StorageNetwork

Processors

Virtual Machine Monitor

OSOS

AppApp

OSOS

AppApp

Virtualization solutions without hardware support work, butVirtualization solutions without hardware support work, but

there are limitations and require frequent software interventionthere are limitations and require frequent software intervention

Page 43: Gideon Gerzon - Intel Developer Zone · 17/04/2007  · 16 Copyright ©2007, Intel Corporation. All rights reserved. Intel®VT FlexPriority • Intel®VT FlexPriority improves VM

43Copyright © 2007, Intel Corporation. All rights reserved.

Software-Only VirtualizationSummary of Challenges

Complexity

• CPU “virtualization holes” require binary translation or paravirtualization

• Must emulate IO devices in software

Performance

• Overheads of excessive or “spurious” faulting

• Overheads of page-table virtualization

• Extra memory required (e.g., translated code, shadow page tables)

• IO requests must traverse two IO stacks (first guest OS, then host OS)

VMM

OSOS

Paravirtualization means changes to OS source code

compile

Binary translation

means runtime patches to OS binary code

Functionality

• Paravirtualization may limit supported guest OSes

• Guest OSes “see” only simulated platform and IO devices

Reliability and Protection

• IO device drivers run as part of host OS or hypervisor

• No protection from errant DMA that corrupts memory

Page 44: Gideon Gerzon - Intel Developer Zone · 17/04/2007  · 16 Copyright ©2007, Intel Corporation. All rights reserved. Intel®VT FlexPriority • Intel®VT FlexPriority improves VM

44Copyright © 2007, Intel Corporation. All rights reserved.

Intel® VT FlexPriority: APIC TPR Virtualization Support

� Intel® FlexPriority adds support for virtualization of memory-mapped TPR

� CPU maintains a “virtual TPR” register in memory

� On guest read of memory-mapped TPR:

- CPU returns shadow value from virtual TPR

� On guest write to memory-mapped TPR:

- CPU writes value to virtual TPR and VM exits only if written value is under threshold

Page 45: Gideon Gerzon - Intel Developer Zone · 17/04/2007  · 16 Copyright ©2007, Intel Corporation. All rights reserved. Intel®VT FlexPriority • Intel®VT FlexPriority improves VM

45Copyright © 2007, Intel Corporation. All rights reserved.

Maximize Virtualization FlexibilityVMware* & Intel® VT FlexMigration Assist

1Backward compatibility for live VM migration also exists with current dual-core Intel® Core™ microarchitecture products Intel Xeon 5100 and Intel Xeon 3000) and forward compatibility with future dual and multi-core processors. Contact your preferred VMM vendor for support requirements.

Starting with Quad-Core Intel® Xeon® based processors1, Intel has architected existing and future products to allow hardware compatibility to support live VM migration across multiple generations of Intel processor families. Intel has enabled industry leading software vendors to take full advantage of this new capability for advanced virtualization usages.

4P+

2P

Intel® Core™microarchitecture (formerly Merom)

Next-gen Intel® Core™microarchitecture

(Penryn)

Next generation Intel® microarchitecture

(Nehalem)

1P

Intel® serverprocessor (Dunnington)

Intel® Xeon®processor (Harpertown)

Intel® desktopprocessor (Yorkfield)

Future

Future

Future

Quad-CoreIntel® Xeon® 5300

Quad-Core Intel® Xeon® 7300

Quad-CoreIntel® Xeon® 3200

2006-2007 2007-20082008-2009

µarch

Dual-Core Intel® Xeon® 5100

Dual-Core Intel® Xeon® 3000

Jointly innovating

to enable more

flexible live virtual

machine migration

across multiple

generations of

Intel® processors

All timeframes, dates, and products are subject to change without further notification

Page 46: Gideon Gerzon - Intel Developer Zone · 17/04/2007  · 16 Copyright ©2007, Intel Corporation. All rights reserved. Intel®VT FlexPriority • Intel®VT FlexPriority improves VM

46Copyright © 2007, Intel Corporation. All rights reserved.

Physical Address Translation

000000b

EPT Base Pointer

Level-4

Page Table Level-3

Page TableLevel-2

Page TableLevel-1

Page Table

4KB Page

56

Guest Physical Address

011

Level-4

table offset

Level-3

table offset

Level-2

table offset

Level-1

table offset

1220212930383947

000000000b

63 4857

Page Offset

Extended Page Table Entry

(EPTE) format described next…

Build Foil

Page 47: Gideon Gerzon - Intel Developer Zone · 17/04/2007  · 16 Copyright ©2007, Intel Corporation. All rights reserved. Intel®VT FlexPriority • Intel®VT FlexPriority improves VM

47Copyright © 2007, Intel Corporation. All rights reserved.

Intel® VT Extended Page Tables

• Optimizes and accelerates memoryvirtualization by enabling Guest OS to modify its own page tables

- Eliminates VM exits resulting on performance gains

- Reduces Shadow Page Tables required for each guest user process delivering memory savings

� CPU TLB ‘walks’ Virtual memory to Physical memory

� EPT ‘walks’ Physical memory to Machine memory

Page 48: Gideon Gerzon - Intel Developer Zone · 17/04/2007  · 16 Copyright ©2007, Intel Corporation. All rights reserved. Intel®VT FlexPriority • Intel®VT FlexPriority improves VM

48Copyright © 2007, Intel Corporation. All rights reserved.

VPID: Usage

� Legacy VMMs will not use VPID

- VMX transitions flush TLBs, supporting old usages

� New VMMs can use VPID field

- Retains linear mappings across VMX transitions

� Use of INVVPID instruction

- Issued by VMM when it has modified page tables for a guest

� E.g., as part of a shadow page-table virtualization algorithm

- Not expected to be used if EPT is active

Page 49: Gideon Gerzon - Intel Developer Zone · 17/04/2007  · 16 Copyright ©2007, Intel Corporation. All rights reserved. Intel®VT FlexPriority • Intel®VT FlexPriority improves VM

49Copyright © 2007, Intel Corporation. All rights reserved.

Intel® VT Virtual Processor ID

• Optimizes VM transition time by avoiding unconditional flushes of cached structures- Translation from Virtual to Physical addresses are maintained in CPU cache

- Ability to assign a VM ID to tag CPU hardware structures (e.g. TLBs)

- Avoid unconditional flush of data between on VM transitions

� CPU is aware of what data belongs to each VM

� TLB data is tagged and maintained between VMExits

Page 50: Gideon Gerzon - Intel Developer Zone · 17/04/2007  · 16 Copyright ©2007, Intel Corporation. All rights reserved. Intel®VT FlexPriority • Intel®VT FlexPriority improves VM

50Copyright © 2007, Intel Corporation. All rights reserved.

Intel® VT-x Extensions (review)Intel® Virtualization Technology FlexPriority- Architectural enhancement that delivers performance gain in virtualization by accelerating virtualization of interrupts on 32-bit guests

- Feature eliminates VMM intercepts of guest access to the Task Priority Register by enabling guests to access shadow register initialized by the VMM

Intel® Virtualization Technology FlexMigration- Architectural enhancement to ease VM Migration constraints across generations of Intel processors

- Delivers investment protection and maximizes migration flexibility to enable zero downtime server maintenance that supports disaster recovery, load balancing, fail over, and more

Intel® VT Extended Page Tables- Hardware assist for page table virtualization to reduce virtualization overhead

- Eliminates VM exits to the VMM for shadow page-table maintenance

Intel® VT Virtual Processor ID- Ability to assign a VM ID to tag CPU hardware structures (e.g. TLBs)- Avoid unconditional flushes on VM transitions to give a lower-cost VM transition time

Focused on maximizing migration flexibility as well as optimizinFocused on maximizing migration flexibility as well as optimizing,g,

accelerating, and improving efficiency of virtualization softwaraccelerating, and improving efficiency of virtualization softwaree

Page 51: Gideon Gerzon - Intel Developer Zone · 17/04/2007  · 16 Copyright ©2007, Intel Corporation. All rights reserved. Intel®VT FlexPriority • Intel®VT FlexPriority improves VM

51Copyright © 2007, Intel Corporation. All rights reserved.

Virtualization PerformanceRobust Tick Tock Roadmap

55%55%

70%70%

100%100%

85%85%

45nm 45nm

IntelIntel®® CoreCore™™

uArchitectureuArchitecture

(Penryn)(Penryn)

Virtualization SW Overhead

2007 / 2008

VMDqIntel® VT-d

2008 / 2009

55%55%

70%70%

100%100%

85%85%

45nm 45nm

Next generation Next generation

Intel Intel

uArchitectureuArchitecture

(Nehalem)(Nehalem)

Virtualization SW Overhead

EPT, VPID,

VMDq2

55%55%

70%70%

100%100%

85%85%

QuadQuad--Core IntelCore Intel®®

XeonXeon®®

ProcessorsProcessors

Intel Xeon 5100, Intel Xeon 5100,

5300, 73005300, 7300

Virtualization SW Overhead

2006 / 2007

Intel® VT-x, FlexPriority

Roadmap will continue to deliver higher raw performance (MooreRoadmap will continue to deliver higher raw performance (Moore’’s Law), ands Law), and

architectural enhancements to improve efficiency in virtualized architectural enhancements to improve efficiency in virtualized environmentsenvironments

All timeframes, dates, and products are subject to change without further notification

Page 52: Gideon Gerzon - Intel Developer Zone · 17/04/2007  · 16 Copyright ©2007, Intel Corporation. All rights reserved. Intel®VT FlexPriority • Intel®VT FlexPriority improves VM

52Copyright © 2007, Intel Corporation. All rights reserved.

Putting the Pieces Together

Intel® AMT

Intel® VT

Secure

Provisioning

Integrity

Services

CryptoAcceleration

� “No excuses” performance- How do you avoid the security/performance trade off?

� Build on existing Intel platform features

� Simplified deployability- How do you get underlying security SW provisioned?

� Flexible security

- How to provide protections for SW that runs in the User’s OS?

Intel® TXT

Page 53: Gideon Gerzon - Intel Developer Zone · 17/04/2007  · 16 Copyright ©2007, Intel Corporation. All rights reserved. Intel®VT FlexPriority • Intel®VT FlexPriority improves VM

53Copyright © 2007, Intel Corporation. All rights reserved.

Competing Competing

ProductsProducts

55%55%

70%70%

100%100%

85%85%

IntelIntel

PerformancePerformance

IntelIntel®® XeonXeon®®

Quad Core Quad Core

ProcessorsProcessors

Virtualization SW Virtualization SW

OverheadOverhead

Intel working to deliver near native performance Intel working to deliver near native performance

by reducing event count as well as event costsby reducing event count as well as event costs

Algorithm OptimizationsAlgorithm Optimizations

Extended Page TablesExtended Page Tables

Virtualization SW Virtualization SW

OverheadOverhead

55%55%

70%70%

85%85%

100%100%

CompetitorCompetitor

PerformancePerformance

Improvements focused onImprovements focused on

optimizationoptimization & & accelerationacceleration

Algorithm Optimizations to IntelAlgorithm Optimizations to Intel®® VTVT--xx::

Intel is working with Intel is working with VMM vendors to tune their VMM vendors to tune their

binary translator algorithms to work better with binary translator algorithms to work better with

IntelIntel®® VTVT

Extended Page Tables (EPT):Extended Page Tables (EPT):

IntelIntel®® VT architectural enhancement that VT architectural enhancement that

allows guest OS to program page tables without allows guest OS to program page tables without

VMM interventionVMM intervention

Others:Others:

Additional microarchitectural and architectural Additional microarchitectural and architectural

enhancements in the works further mitigate enhancements in the works further mitigate

virtualization software overheadvirtualization software overhead

Virtualization OverheadOptimization & Acceleration Improvements

Results have been simulated and are provided for informational purposes only. Results were derived using simulations run on an architecture simulator. Any difference in system hardware or software design or configuration may affect actual performance.