SlideShare a Scribd company logo
1 of 32
Redesigning Xen Memory Sharing (Grant) Mechanism Kaushik Kumar Ram (Rice University) Jose Renato Santos (HP Labs) Yoshio Turner (HP Labs) Alan L. Cox (Rice University) Scott Rixner (Rice University) Xen Summit Aug 2nd 2011
This talk… Will make a case for redesigning the grant mechanism to achieve better I/O performance and for other benefits Will propose an alternate design for the grant mechanism Will present an evaluation of a prototype of this new design 8/2/11 1 Xen Summit 2011
Outline Motivation Proposal  A grant reuse scheme Evaluation Conclusion 8/2/11 2 Xen Summit 2011
Traditional I/O Virtualization frontend backend Guest Domain Driver Domain Guest domain –driver domain memory sharing (grant mechanism) Physical Driver Xen Hypervisor Driver domain –device memory sharing (IOMMU) Device Hardware 			Two level memory sharing 8/2/11 3 Xen Summit 2011
Direct Device Assignment Guest Domain Guest domain –device memory sharing (IOMMU) Physical Driver Xen Hypervisor Device Hardware 			One level memory sharing 8/2/11 4 Xen Summit 2011
Grant Mechanism Controlled memory sharing between domains Source domain can share its memory pages with a specific destination domain Destination domain can validate that the shared pages belong to the source domain via the hypervisor 8/2/11 5 Xen Summit 2011
      Creating Shared Memory       using Grant Mechanism Source Domain Creates grant entry in        grant table Destination Domain Issues grant hypercall Hypervisor validates grant and maps source page  Destination Domain Source Domain grant reference Grant Table Hypercall Xen Hypervisor Hardware 8/2/11 6 Xen Summit 2011
     Revoking Shared Memory       using Grant Mechanism Destination Domain Issues grant hypercall Hypervisor unmaps page Source Domain Deletes grant entry             from grant table Source Domain Destination Domain Grant Table Hypercall Xen Hypervisor Hardware 8/2/11 7 Xen Summit 2011
IOMMU To safely share memory with I/O devices Maintain memory isolation between domains (direct device assignment) Protect against device driver bugs Protect against attacks exploiting device DMA Memory IOMMU Table I/O Device Machine Address I/O Address 8/2/11 8 Xen Summit 2011
Sharing Memory via IOMMUs Para-virtualized I/O :- Fine-grained sharing IOMMU mapping setup during grant map hypercall and revoked during grant unmaphypercall Direct Device Assignment :- Only coarse-grained sharing 8/2/11 9 Xen Summit 2011
High Memory Sharing Overhead I/O page is shared only for the duration of a single I/O High cost of grant hypercalls and mapping/unmapping incurred in driver domain on every I/O operation 8/2/11 10 Xen Summit 2011
Reuse Scheme to Reduce Overhead Take advantage of temporal and/or spatial locality in use of I/O pages Reuse grants when I/O pages are reused Reduce grant issue and revoke operations Reduce grant hypercalls and mapping/unmapping overheads in driver domain  8/2/11 11 Xen Summit 2011
Reuse Under Existing Grant Mechanism Grant reuse scheme requires – Not revoking grants after every I/O operation Persistent mapping of guest I/O pages in driver domain Grants can be revoked when pages re-purposed for non-I/O operations Today, there exists no way for guest domain to revoke access when its page is still mapped in driver domain  8/2/11 12 Xen Summit 2011
Goals Enable reuse to reduce memory sharing related overheads during I/O Support unilateral revocation of grants by source domains Support an unified interface to share memory with I/O devices via IOMMUs 8/2/11 13 Xen Summit 2011
Proposal Move the grant related hypercalls to the guest domains Guest domains directly interact with the hypervisor to issue and revoke grants Guest Domain Driver Domain Grant Table Hypercall Hypercall Xen Hypervisor Hardware 8/2/11 14 Xen Summit 2011
       Redesigned Grant Mechanism1. Initialization INIT1 hypercall (para-virtualized I/O only) Registers a virtual address range  Base address(es) and size INIT2 hypercall Provides a “device_id” Returns the size of the “grant address space”  0 – size of address range Guest Domain Driver Domain INIT2 Hypercall INIT1 Hypercall Xen Hypervisor Hardware 8/2/11 15 Xen Summit 2011
Grant (I/O) Address Space 8/2/11 Xen Summit 2011 16 0x20000 0x10000 Size of address range 0x40000 0x10000 0x0 Grant address space 0x30000 Driver domain virtual address space (page table) I/O virtual address space (IOMMU table)
       Redesigned Grant Mechanism2. Creating Shared Memory Guest Domain : Picks a “grant reference” Offset within grant address space Issues grant MAP hypercall Hypervisor validates grant and maps guest page Driver Domain : Translates grant reference into virtual address and I/O address Guest Domain Driver Domain grant reference MAP Hypercall Xen Hypervisor Setup IOMMU mapping Hardware 8/2/11 17 Xen Summit 2011
Grant Mapping 8/2/11 Xen Summit 2011 18 0x20000 Grant reference 0x10000 0x40000 0x7000 0x10000 0x0 Grant address space 0x30000 Driver domain virtual address space (page table) I/O virtual address space (IOMMU table)
       Redesigned Grant Mechanism2. Creating Shared Memory Guest Domain : Picks a “grant reference” Offset within grant address space Issues grant MAP hypercall Hypervisor validates grant and maps guest page Driver Domain : Translates grant reference into virtual address and I/O address Guest Domain Driver Domain grant reference MAP Hypercall Xen Hypervisor Setup IOMMU mapping Hardware 8/2/11 19 Xen Summit 2011
Grant Mapping 8/2/11 Xen Summit 2011 20 0x20000 Grant reference 0x10000 0x17000 0x40000 0x10000 0x37000 0x0 Grant address space 0x30000 Driver domain virtual address space (page table) I/O virtual address space (IOMMU table)
       Redesigned Grant Mechanism3. Revoking Shared Memory Guest Domain : Issues grant UNMAP hypercall Provides grant reference Hypervisor unmaps page Guest Domain Driver Domain UNMAP Hypercall Xen Hypervisor Remove IOMMU mapping Hardware 8/2/11 21 Xen Summit 2011
Unilateral Revocation Guest domains can revoke grants any time by issuing grant UNMAP hypercall No driver domain participation required Safe to revoke grants even when the I/O pages are in use  Since corresponding IOMMU mappings are also removed 8/2/11 22 Xen Summit 2011
Unified Interface 	Grant hypercall interface can be invoked from the Guest DMA library  Guest Domain  SRIOV VF Driver netfront DMA Library Xen Hypervisor Hardware IOMMU 8/2/11 23 Xen Summit 2011
Grant Reuse Take advantage of temporal and/or spatial locality in use of I/O pages Reuse grants when I/O pages are reused Reuse grants across multiple I/O operations Guest domain issues grant Driver domain uses I/O page for multiple I/O operations Guest domain revokes grant Guest domains can implement any scheme to reuse grants  Relax safety constraints Security vs performance trade-off Shared mappings, delayed invalidations, optimistic tear-down etc. 8/2/11 24 Xen Summit 2011
A Grant Reuse Scheme Security compromise – prevents corruption of non-I/O pages Policy – Never share a non-I/O read-write page Receive read-write sharing  Allocate I/O buffers from a dedicated pool E.g. slab cache in Linux Revoke grant when pages are reaped from pool I/O buffer pool also promotes temporal locality Transmit read-only sharing Persistent sharing Grants revoked only when there are no more grant references available (or keep it mapped always) 8/2/11 25 Xen Summit 2011
Evaluation - Setup and Methodology Server Configuration HP Proliant BL460c G7 Blade server Intel Xeon X5670 – 6 CPU cores 32 GB RAM 2 embedded 10 GbE ports Domain Configuration Domain0 linux 2.6.32.40 pvops kernel and 1 GB memory Driver Domain linux-2.6.18.8-xen0 (modified) and 512 MB memory Guest Domains linux-2.6.18.8-xenU (modified) and 512 MB memory Driver and guest domains configured with one VCPU each (pinned) Netperf TCP Streaming tests 8/2/11 26 Xen Summit 2011
Evaluation - Transmit Results 8/2/11 27 Xen Summit 2011 ,[object Object],[object Object]
Driver domain bottleneck (Baseline),[object Object],[object Object]
Conclusions Made a case for redesigning the grant mechanism Enable grant reuse Support unilateral revocations Support an unified interface to program IOMMUs Proposed an alternate design where the source domain interacts directly with the hypervisor Implemented and evaluated a reuse scheme 8/2/11 31 Xen Summit 2011
Redesigning Xen Memory Sharing (Grant) Mechanism
Redesigning Xen Memory Sharing (Grant) Mechanism

More Related Content

What's hot

ARM Trusted FirmwareのBL31を単体で使う!
ARM Trusted FirmwareのBL31を単体で使う!ARM Trusted FirmwareのBL31を単体で使う!
ARM Trusted FirmwareのBL31を単体で使う!Mr. Vengineer
 
NFVアプリケーションをOpenStack上で動かす為に - OpenStack最新情報セミナー 2017年7月
NFVアプリケーションをOpenStack上で動かす為に - OpenStack最新情報セミナー 2017年7月NFVアプリケーションをOpenStack上で動かす為に - OpenStack最新情報セミナー 2017年7月
NFVアプリケーションをOpenStack上で動かす為に - OpenStack最新情報セミナー 2017年7月VirtualTech Japan Inc.
 
Kvm performance optimization for ubuntu
Kvm performance optimization for ubuntuKvm performance optimization for ubuntu
Kvm performance optimization for ubuntuSim Janghoon
 
05.2 virtio introduction
05.2 virtio introduction05.2 virtio introduction
05.2 virtio introductionzenixls2
 
Linux Performance Analysis: New Tools and Old Secrets
Linux Performance Analysis: New Tools and Old SecretsLinux Performance Analysis: New Tools and Old Secrets
Linux Performance Analysis: New Tools and Old SecretsBrendan Gregg
 
Static Partitioning with Xen, LinuxRT, and Zephyr: A Concrete End-to-end Exam...
Static Partitioning with Xen, LinuxRT, and Zephyr: A Concrete End-to-end Exam...Static Partitioning with Xen, LinuxRT, and Zephyr: A Concrete End-to-end Exam...
Static Partitioning with Xen, LinuxRT, and Zephyr: A Concrete End-to-end Exam...Stefano Stabellini
 
OVN 設定サンプル | OVN config example 2015/12/27
OVN 設定サンプル | OVN config example 2015/12/27OVN 設定サンプル | OVN config example 2015/12/27
OVN 設定サンプル | OVN config example 2015/12/27Kentaro Ebisawa
 
Deep Dive into the Linux Kernel - メモリ管理におけるCompaction機能について
Deep Dive into the Linux Kernel - メモリ管理におけるCompaction機能についてDeep Dive into the Linux Kernel - メモリ管理におけるCompaction機能について
Deep Dive into the Linux Kernel - メモリ管理におけるCompaction機能についてNTT DATA Technology & Innovation
 
BPF: Tracing and more
BPF: Tracing and moreBPF: Tracing and more
BPF: Tracing and moreBrendan Gregg
 
Unikraft: Fast, Specialized Unikernels the Easy Way
Unikraft: Fast, Specialized Unikernels the Easy WayUnikraft: Fast, Specialized Unikernels the Easy Way
Unikraft: Fast, Specialized Unikernels the Easy WayScyllaDB
 
SFO15-TR9: PSCI, ACPI (and UEFI to boot)
SFO15-TR9: PSCI, ACPI (and UEFI to boot)SFO15-TR9: PSCI, ACPI (and UEFI to boot)
SFO15-TR9: PSCI, ACPI (and UEFI to boot)Linaro
 
XPDDS17: Reworking the ARM GIC Emulation & Xen Challenges in the ARM ITS Emu...
XPDDS17:  Reworking the ARM GIC Emulation & Xen Challenges in the ARM ITS Emu...XPDDS17:  Reworking the ARM GIC Emulation & Xen Challenges in the ARM ITS Emu...
XPDDS17: Reworking the ARM GIC Emulation & Xen Challenges in the ARM ITS Emu...The Linux Foundation
 
Memory Mapping Implementation (mmap) in Linux Kernel
Memory Mapping Implementation (mmap) in Linux KernelMemory Mapping Implementation (mmap) in Linux Kernel
Memory Mapping Implementation (mmap) in Linux KernelAdrian Huang
 
Slab Allocator in Linux Kernel
Slab Allocator in Linux KernelSlab Allocator in Linux Kernel
Slab Allocator in Linux KernelAdrian Huang
 
ELC21: VM-to-VM Communication Mechanisms for Embedded
ELC21: VM-to-VM Communication Mechanisms for EmbeddedELC21: VM-to-VM Communication Mechanisms for Embedded
ELC21: VM-to-VM Communication Mechanisms for EmbeddedStefano Stabellini
 
Introduction to Linux Kernel by Quontra Solutions
Introduction to Linux Kernel by Quontra SolutionsIntroduction to Linux Kernel by Quontra Solutions
Introduction to Linux Kernel by Quontra SolutionsQUONTRASOLUTIONS
 

What's hot (20)

Xen Memory Management
Xen Memory ManagementXen Memory Management
Xen Memory Management
 
ARM Trusted FirmwareのBL31を単体で使う!
ARM Trusted FirmwareのBL31を単体で使う!ARM Trusted FirmwareのBL31を単体で使う!
ARM Trusted FirmwareのBL31を単体で使う!
 
NFVアプリケーションをOpenStack上で動かす為に - OpenStack最新情報セミナー 2017年7月
NFVアプリケーションをOpenStack上で動かす為に - OpenStack最新情報セミナー 2017年7月NFVアプリケーションをOpenStack上で動かす為に - OpenStack最新情報セミナー 2017年7月
NFVアプリケーションをOpenStack上で動かす為に - OpenStack最新情報セミナー 2017年7月
 
Kvm performance optimization for ubuntu
Kvm performance optimization for ubuntuKvm performance optimization for ubuntu
Kvm performance optimization for ubuntu
 
05.2 virtio introduction
05.2 virtio introduction05.2 virtio introduction
05.2 virtio introduction
 
Linux Performance Analysis: New Tools and Old Secrets
Linux Performance Analysis: New Tools and Old SecretsLinux Performance Analysis: New Tools and Old Secrets
Linux Performance Analysis: New Tools and Old Secrets
 
Static Partitioning with Xen, LinuxRT, and Zephyr: A Concrete End-to-end Exam...
Static Partitioning with Xen, LinuxRT, and Zephyr: A Concrete End-to-end Exam...Static Partitioning with Xen, LinuxRT, and Zephyr: A Concrete End-to-end Exam...
Static Partitioning with Xen, LinuxRT, and Zephyr: A Concrete End-to-end Exam...
 
OVN 設定サンプル | OVN config example 2015/12/27
OVN 設定サンプル | OVN config example 2015/12/27OVN 設定サンプル | OVN config example 2015/12/27
OVN 設定サンプル | OVN config example 2015/12/27
 
initramfsについて
initramfsについてinitramfsについて
initramfsについて
 
Deep Dive into the Linux Kernel - メモリ管理におけるCompaction機能について
Deep Dive into the Linux Kernel - メモリ管理におけるCompaction機能についてDeep Dive into the Linux Kernel - メモリ管理におけるCompaction機能について
Deep Dive into the Linux Kernel - メモリ管理におけるCompaction機能について
 
BPF: Tracing and more
BPF: Tracing and moreBPF: Tracing and more
BPF: Tracing and more
 
Neutron packet logging framework
Neutron packet logging frameworkNeutron packet logging framework
Neutron packet logging framework
 
Multi Chassis LAG for Cloud builders
Multi Chassis LAG for Cloud buildersMulti Chassis LAG for Cloud builders
Multi Chassis LAG for Cloud builders
 
Unikraft: Fast, Specialized Unikernels the Easy Way
Unikraft: Fast, Specialized Unikernels the Easy WayUnikraft: Fast, Specialized Unikernels the Easy Way
Unikraft: Fast, Specialized Unikernels the Easy Way
 
SFO15-TR9: PSCI, ACPI (and UEFI to boot)
SFO15-TR9: PSCI, ACPI (and UEFI to boot)SFO15-TR9: PSCI, ACPI (and UEFI to boot)
SFO15-TR9: PSCI, ACPI (and UEFI to boot)
 
XPDDS17: Reworking the ARM GIC Emulation & Xen Challenges in the ARM ITS Emu...
XPDDS17:  Reworking the ARM GIC Emulation & Xen Challenges in the ARM ITS Emu...XPDDS17:  Reworking the ARM GIC Emulation & Xen Challenges in the ARM ITS Emu...
XPDDS17: Reworking the ARM GIC Emulation & Xen Challenges in the ARM ITS Emu...
 
Memory Mapping Implementation (mmap) in Linux Kernel
Memory Mapping Implementation (mmap) in Linux KernelMemory Mapping Implementation (mmap) in Linux Kernel
Memory Mapping Implementation (mmap) in Linux Kernel
 
Slab Allocator in Linux Kernel
Slab Allocator in Linux KernelSlab Allocator in Linux Kernel
Slab Allocator in Linux Kernel
 
ELC21: VM-to-VM Communication Mechanisms for Embedded
ELC21: VM-to-VM Communication Mechanisms for EmbeddedELC21: VM-to-VM Communication Mechanisms for Embedded
ELC21: VM-to-VM Communication Mechanisms for Embedded
 
Introduction to Linux Kernel by Quontra Solutions
Introduction to Linux Kernel by Quontra SolutionsIntroduction to Linux Kernel by Quontra Solutions
Introduction to Linux Kernel by Quontra Solutions
 

Similar to Redesigning Xen Memory Sharing (Grant) Mechanism

XPDDS18: Design and Implementation of Automotive: Virtualization Based on Xen...
XPDDS18: Design and Implementation of Automotive: Virtualization Based on Xen...XPDDS18: Design and Implementation of Automotive: Virtualization Based on Xen...
XPDDS18: Design and Implementation of Automotive: Virtualization Based on Xen...The Linux Foundation
 
Xen and the art of virtualization
Xen and the art of virtualizationXen and the art of virtualization
Xen and the art of virtualizationAbdul417101
 
Best Practices For Virtualised Share Point T02 Brendan Law Nathan Mercer
Best Practices For Virtualised Share Point T02 Brendan Law Nathan MercerBest Practices For Virtualised Share Point T02 Brendan Law Nathan Mercer
Best Practices For Virtualised Share Point T02 Brendan Law Nathan MercerFlamer
 
XPDS13: Performance Evaluation of Live Migration based on Xen ARM PVH - Jaeyo...
XPDS13: Performance Evaluation of Live Migration based on Xen ARM PVH - Jaeyo...XPDS13: Performance Evaluation of Live Migration based on Xen ARM PVH - Jaeyo...
XPDS13: Performance Evaluation of Live Migration based on Xen ARM PVH - Jaeyo...The Linux Foundation
 
Windows Server 2008 R2 Hyper V
Windows Server 2008 R2 Hyper VWindows Server 2008 R2 Hyper V
Windows Server 2008 R2 Hyper VAmit Gatenyo
 
VMware Performance Troubleshooting
VMware Performance TroubleshootingVMware Performance Troubleshooting
VMware Performance Troubleshootingglbsolutions
 
Xen Cloud Platform Installation Guide
Xen Cloud Platform Installation GuideXen Cloud Platform Installation Guide
Xen Cloud Platform Installation GuideSusheel Thakur
 
Microsoft Azure, door Rob Brommer op de 4DotNet Developers Day
Microsoft Azure, door Rob Brommer op de 4DotNet Developers DayMicrosoft Azure, door Rob Brommer op de 4DotNet Developers Day
Microsoft Azure, door Rob Brommer op de 4DotNet Developers DayHanneke Dotnet
 
Xen Euro Par07
Xen Euro Par07Xen Euro Par07
Xen Euro Par07congvc
 
Vmware vsphere taking_a_trip_down_memory_lane
Vmware vsphere taking_a_trip_down_memory_laneVmware vsphere taking_a_trip_down_memory_lane
Vmware vsphere taking_a_trip_down_memory_laneMetron
 
Spring 2007 SharePoint Connections Oleson Advanced Administration and Plannin...
Spring 2007 SharePoint Connections Oleson Advanced Administration and Plannin...Spring 2007 SharePoint Connections Oleson Advanced Administration and Plannin...
Spring 2007 SharePoint Connections Oleson Advanced Administration and Plannin...Joel Oleson
 
PHDVirtual Backups for VMware
PHDVirtual Backups for VMwarePHDVirtual Backups for VMware
PHDVirtual Backups for VMwareDevansh Chowdhary
 
Virtualization
VirtualizationVirtualization
Virtualizationganeshhcl
 
SharePoint Backup And Disaster Recovery with Joel Oleson
SharePoint Backup And Disaster Recovery with Joel OlesonSharePoint Backup And Disaster Recovery with Joel Oleson
SharePoint Backup And Disaster Recovery with Joel OlesonJoel Oleson
 
Intro to virtualization
Intro to virtualizationIntro to virtualization
Intro to virtualizationKalpna Saharan
 
Windows Server Virtualization
Windows Server VirtualizationWindows Server Virtualization
Windows Server Virtualizationwebhostingguy
 

Similar to Redesigning Xen Memory Sharing (Grant) Mechanism (20)

XPDDS18: Design and Implementation of Automotive: Virtualization Based on Xen...
XPDDS18: Design and Implementation of Automotive: Virtualization Based on Xen...XPDDS18: Design and Implementation of Automotive: Virtualization Based on Xen...
XPDDS18: Design and Implementation of Automotive: Virtualization Based on Xen...
 
Xen and the art of virtualization
Xen and the art of virtualizationXen and the art of virtualization
Xen and the art of virtualization
 
Best Practices For Virtualised Share Point T02 Brendan Law Nathan Mercer
Best Practices For Virtualised Share Point T02 Brendan Law Nathan MercerBest Practices For Virtualised Share Point T02 Brendan Law Nathan Mercer
Best Practices For Virtualised Share Point T02 Brendan Law Nathan Mercer
 
Xen & virtualization
Xen & virtualizationXen & virtualization
Xen & virtualization
 
XPDS13: Performance Evaluation of Live Migration based on Xen ARM PVH - Jaeyo...
XPDS13: Performance Evaluation of Live Migration based on Xen ARM PVH - Jaeyo...XPDS13: Performance Evaluation of Live Migration based on Xen ARM PVH - Jaeyo...
XPDS13: Performance Evaluation of Live Migration based on Xen ARM PVH - Jaeyo...
 
Windows Server 2008 R2 Hyper V
Windows Server 2008 R2 Hyper VWindows Server 2008 R2 Hyper V
Windows Server 2008 R2 Hyper V
 
VMware Performance Troubleshooting
VMware Performance TroubleshootingVMware Performance Troubleshooting
VMware Performance Troubleshooting
 
VNX Overview
VNX Overview   VNX Overview
VNX Overview
 
Xen Cloud Platform Installation Guide
Xen Cloud Platform Installation GuideXen Cloud Platform Installation Guide
Xen Cloud Platform Installation Guide
 
Microsoft Azure, door Rob Brommer op de 4DotNet Developers Day
Microsoft Azure, door Rob Brommer op de 4DotNet Developers DayMicrosoft Azure, door Rob Brommer op de 4DotNet Developers Day
Microsoft Azure, door Rob Brommer op de 4DotNet Developers Day
 
Xen Euro Par07
Xen Euro Par07Xen Euro Par07
Xen Euro Par07
 
Vmware vsphere taking_a_trip_down_memory_lane
Vmware vsphere taking_a_trip_down_memory_laneVmware vsphere taking_a_trip_down_memory_lane
Vmware vsphere taking_a_trip_down_memory_lane
 
Spring 2007 SharePoint Connections Oleson Advanced Administration and Plannin...
Spring 2007 SharePoint Connections Oleson Advanced Administration and Plannin...Spring 2007 SharePoint Connections Oleson Advanced Administration and Plannin...
Spring 2007 SharePoint Connections Oleson Advanced Administration and Plannin...
 
PHDVirtual Backups for VMware
PHDVirtual Backups for VMwarePHDVirtual Backups for VMware
PHDVirtual Backups for VMware
 
Virtualization
VirtualizationVirtualization
Virtualization
 
Virtualization
VirtualizationVirtualization
Virtualization
 
Io sy.stemppt
Io sy.stempptIo sy.stemppt
Io sy.stemppt
 
SharePoint Backup And Disaster Recovery with Joel Oleson
SharePoint Backup And Disaster Recovery with Joel OlesonSharePoint Backup And Disaster Recovery with Joel Oleson
SharePoint Backup And Disaster Recovery with Joel Oleson
 
Intro to virtualization
Intro to virtualizationIntro to virtualization
Intro to virtualization
 
Windows Server Virtualization
Windows Server VirtualizationWindows Server Virtualization
Windows Server Virtualization
 

More from The Linux Foundation

ELC2019: Static Partitioning Made Simple
ELC2019: Static Partitioning Made SimpleELC2019: Static Partitioning Made Simple
ELC2019: Static Partitioning Made SimpleThe Linux Foundation
 
XPDDS19: How TrenchBoot is Enabling Measured Launch for Open-Source Platform ...
XPDDS19: How TrenchBoot is Enabling Measured Launch for Open-Source Platform ...XPDDS19: How TrenchBoot is Enabling Measured Launch for Open-Source Platform ...
XPDDS19: How TrenchBoot is Enabling Measured Launch for Open-Source Platform ...The Linux Foundation
 
XPDDS19 Keynote: Xen in Automotive - Artem Mygaiev, Director, Technology Solu...
XPDDS19 Keynote: Xen in Automotive - Artem Mygaiev, Director, Technology Solu...XPDDS19 Keynote: Xen in Automotive - Artem Mygaiev, Director, Technology Solu...
XPDDS19 Keynote: Xen in Automotive - Artem Mygaiev, Director, Technology Solu...The Linux Foundation
 
XPDDS19 Keynote: Xen Project Weather Report 2019 - Lars Kurth, Director of Op...
XPDDS19 Keynote: Xen Project Weather Report 2019 - Lars Kurth, Director of Op...XPDDS19 Keynote: Xen Project Weather Report 2019 - Lars Kurth, Director of Op...
XPDDS19 Keynote: Xen Project Weather Report 2019 - Lars Kurth, Director of Op...The Linux Foundation
 
XPDDS19 Keynote: Unikraft Weather Report
XPDDS19 Keynote:  Unikraft Weather ReportXPDDS19 Keynote:  Unikraft Weather Report
XPDDS19 Keynote: Unikraft Weather ReportThe Linux Foundation
 
XPDDS19 Keynote: Secret-free Hypervisor: Now and Future - Wei Liu, Software E...
XPDDS19 Keynote: Secret-free Hypervisor: Now and Future - Wei Liu, Software E...XPDDS19 Keynote: Secret-free Hypervisor: Now and Future - Wei Liu, Software E...
XPDDS19 Keynote: Secret-free Hypervisor: Now and Future - Wei Liu, Software E...The Linux Foundation
 
XPDDS19 Keynote: Patch Review for Non-maintainers - George Dunlap, Citrix Sys...
XPDDS19 Keynote: Patch Review for Non-maintainers - George Dunlap, Citrix Sys...XPDDS19 Keynote: Patch Review for Non-maintainers - George Dunlap, Citrix Sys...
XPDDS19 Keynote: Patch Review for Non-maintainers - George Dunlap, Citrix Sys...The Linux Foundation
 
XPDDS19: Memories of a VM Funk - Mihai Donțu, Bitdefender
XPDDS19: Memories of a VM Funk - Mihai Donțu, BitdefenderXPDDS19: Memories of a VM Funk - Mihai Donțu, Bitdefender
XPDDS19: Memories of a VM Funk - Mihai Donțu, BitdefenderThe Linux Foundation
 
OSSJP/ALS19: The Road to Safety Certification: Overcoming Community Challeng...
OSSJP/ALS19:  The Road to Safety Certification: Overcoming Community Challeng...OSSJP/ALS19:  The Road to Safety Certification: Overcoming Community Challeng...
OSSJP/ALS19: The Road to Safety Certification: Overcoming Community Challeng...The Linux Foundation
 
OSSJP/ALS19: The Road to Safety Certification: How the Xen Project is Making...
 OSSJP/ALS19: The Road to Safety Certification: How the Xen Project is Making... OSSJP/ALS19: The Road to Safety Certification: How the Xen Project is Making...
OSSJP/ALS19: The Road to Safety Certification: How the Xen Project is Making...The Linux Foundation
 
XPDDS19: Speculative Sidechannels and Mitigations - Andrew Cooper, Citrix
XPDDS19: Speculative Sidechannels and Mitigations - Andrew Cooper, CitrixXPDDS19: Speculative Sidechannels and Mitigations - Andrew Cooper, Citrix
XPDDS19: Speculative Sidechannels and Mitigations - Andrew Cooper, CitrixThe Linux Foundation
 
XPDDS19: Keeping Coherency on Arm: Reborn - Julien Grall, Arm ltd
XPDDS19: Keeping Coherency on Arm: Reborn - Julien Grall, Arm ltdXPDDS19: Keeping Coherency on Arm: Reborn - Julien Grall, Arm ltd
XPDDS19: Keeping Coherency on Arm: Reborn - Julien Grall, Arm ltdThe Linux Foundation
 
XPDDS19: QEMU PV Backend 'qdevification'... What Does it Mean? - Paul Durrant...
XPDDS19: QEMU PV Backend 'qdevification'... What Does it Mean? - Paul Durrant...XPDDS19: QEMU PV Backend 'qdevification'... What Does it Mean? - Paul Durrant...
XPDDS19: QEMU PV Backend 'qdevification'... What Does it Mean? - Paul Durrant...The Linux Foundation
 
XPDDS19: Status of PCI Emulation in Xen - Roger Pau Monné, Citrix Systems R&D
XPDDS19: Status of PCI Emulation in Xen - Roger Pau Monné, Citrix Systems R&DXPDDS19: Status of PCI Emulation in Xen - Roger Pau Monné, Citrix Systems R&D
XPDDS19: Status of PCI Emulation in Xen - Roger Pau Monné, Citrix Systems R&DThe Linux Foundation
 
XPDDS19: [ARM] OP-TEE Mediator in Xen - Volodymyr Babchuk, EPAM Systems
XPDDS19: [ARM] OP-TEE Mediator in Xen - Volodymyr Babchuk, EPAM SystemsXPDDS19: [ARM] OP-TEE Mediator in Xen - Volodymyr Babchuk, EPAM Systems
XPDDS19: [ARM] OP-TEE Mediator in Xen - Volodymyr Babchuk, EPAM SystemsThe Linux Foundation
 
XPDDS19: Bringing Xen to the Masses: The Story of Building a Community-driven...
XPDDS19: Bringing Xen to the Masses: The Story of Building a Community-driven...XPDDS19: Bringing Xen to the Masses: The Story of Building a Community-driven...
XPDDS19: Bringing Xen to the Masses: The Story of Building a Community-driven...The Linux Foundation
 
XPDDS19: Will Robots Automate Your Job Away? Streamlining Xen Project Contrib...
XPDDS19: Will Robots Automate Your Job Away? Streamlining Xen Project Contrib...XPDDS19: Will Robots Automate Your Job Away? Streamlining Xen Project Contrib...
XPDDS19: Will Robots Automate Your Job Away? Streamlining Xen Project Contrib...The Linux Foundation
 
XPDDS19: Client Virtualization Toolstack in Go - Nick Rosbrook & Brendan Kerr...
XPDDS19: Client Virtualization Toolstack in Go - Nick Rosbrook & Brendan Kerr...XPDDS19: Client Virtualization Toolstack in Go - Nick Rosbrook & Brendan Kerr...
XPDDS19: Client Virtualization Toolstack in Go - Nick Rosbrook & Brendan Kerr...The Linux Foundation
 
XPDDS19: Core Scheduling in Xen - Jürgen Groß, SUSE
XPDDS19: Core Scheduling in Xen - Jürgen Groß, SUSEXPDDS19: Core Scheduling in Xen - Jürgen Groß, SUSE
XPDDS19: Core Scheduling in Xen - Jürgen Groß, SUSEThe Linux Foundation
 
XPDDS19: Implementing AMD MxGPU - Jonathan Farrell, Assured Information Security
XPDDS19: Implementing AMD MxGPU - Jonathan Farrell, Assured Information SecurityXPDDS19: Implementing AMD MxGPU - Jonathan Farrell, Assured Information Security
XPDDS19: Implementing AMD MxGPU - Jonathan Farrell, Assured Information SecurityThe Linux Foundation
 

More from The Linux Foundation (20)

ELC2019: Static Partitioning Made Simple
ELC2019: Static Partitioning Made SimpleELC2019: Static Partitioning Made Simple
ELC2019: Static Partitioning Made Simple
 
XPDDS19: How TrenchBoot is Enabling Measured Launch for Open-Source Platform ...
XPDDS19: How TrenchBoot is Enabling Measured Launch for Open-Source Platform ...XPDDS19: How TrenchBoot is Enabling Measured Launch for Open-Source Platform ...
XPDDS19: How TrenchBoot is Enabling Measured Launch for Open-Source Platform ...
 
XPDDS19 Keynote: Xen in Automotive - Artem Mygaiev, Director, Technology Solu...
XPDDS19 Keynote: Xen in Automotive - Artem Mygaiev, Director, Technology Solu...XPDDS19 Keynote: Xen in Automotive - Artem Mygaiev, Director, Technology Solu...
XPDDS19 Keynote: Xen in Automotive - Artem Mygaiev, Director, Technology Solu...
 
XPDDS19 Keynote: Xen Project Weather Report 2019 - Lars Kurth, Director of Op...
XPDDS19 Keynote: Xen Project Weather Report 2019 - Lars Kurth, Director of Op...XPDDS19 Keynote: Xen Project Weather Report 2019 - Lars Kurth, Director of Op...
XPDDS19 Keynote: Xen Project Weather Report 2019 - Lars Kurth, Director of Op...
 
XPDDS19 Keynote: Unikraft Weather Report
XPDDS19 Keynote:  Unikraft Weather ReportXPDDS19 Keynote:  Unikraft Weather Report
XPDDS19 Keynote: Unikraft Weather Report
 
XPDDS19 Keynote: Secret-free Hypervisor: Now and Future - Wei Liu, Software E...
XPDDS19 Keynote: Secret-free Hypervisor: Now and Future - Wei Liu, Software E...XPDDS19 Keynote: Secret-free Hypervisor: Now and Future - Wei Liu, Software E...
XPDDS19 Keynote: Secret-free Hypervisor: Now and Future - Wei Liu, Software E...
 
XPDDS19 Keynote: Patch Review for Non-maintainers - George Dunlap, Citrix Sys...
XPDDS19 Keynote: Patch Review for Non-maintainers - George Dunlap, Citrix Sys...XPDDS19 Keynote: Patch Review for Non-maintainers - George Dunlap, Citrix Sys...
XPDDS19 Keynote: Patch Review for Non-maintainers - George Dunlap, Citrix Sys...
 
XPDDS19: Memories of a VM Funk - Mihai Donțu, Bitdefender
XPDDS19: Memories of a VM Funk - Mihai Donțu, BitdefenderXPDDS19: Memories of a VM Funk - Mihai Donțu, Bitdefender
XPDDS19: Memories of a VM Funk - Mihai Donțu, Bitdefender
 
OSSJP/ALS19: The Road to Safety Certification: Overcoming Community Challeng...
OSSJP/ALS19:  The Road to Safety Certification: Overcoming Community Challeng...OSSJP/ALS19:  The Road to Safety Certification: Overcoming Community Challeng...
OSSJP/ALS19: The Road to Safety Certification: Overcoming Community Challeng...
 
OSSJP/ALS19: The Road to Safety Certification: How the Xen Project is Making...
 OSSJP/ALS19: The Road to Safety Certification: How the Xen Project is Making... OSSJP/ALS19: The Road to Safety Certification: How the Xen Project is Making...
OSSJP/ALS19: The Road to Safety Certification: How the Xen Project is Making...
 
XPDDS19: Speculative Sidechannels and Mitigations - Andrew Cooper, Citrix
XPDDS19: Speculative Sidechannels and Mitigations - Andrew Cooper, CitrixXPDDS19: Speculative Sidechannels and Mitigations - Andrew Cooper, Citrix
XPDDS19: Speculative Sidechannels and Mitigations - Andrew Cooper, Citrix
 
XPDDS19: Keeping Coherency on Arm: Reborn - Julien Grall, Arm ltd
XPDDS19: Keeping Coherency on Arm: Reborn - Julien Grall, Arm ltdXPDDS19: Keeping Coherency on Arm: Reborn - Julien Grall, Arm ltd
XPDDS19: Keeping Coherency on Arm: Reborn - Julien Grall, Arm ltd
 
XPDDS19: QEMU PV Backend 'qdevification'... What Does it Mean? - Paul Durrant...
XPDDS19: QEMU PV Backend 'qdevification'... What Does it Mean? - Paul Durrant...XPDDS19: QEMU PV Backend 'qdevification'... What Does it Mean? - Paul Durrant...
XPDDS19: QEMU PV Backend 'qdevification'... What Does it Mean? - Paul Durrant...
 
XPDDS19: Status of PCI Emulation in Xen - Roger Pau Monné, Citrix Systems R&D
XPDDS19: Status of PCI Emulation in Xen - Roger Pau Monné, Citrix Systems R&DXPDDS19: Status of PCI Emulation in Xen - Roger Pau Monné, Citrix Systems R&D
XPDDS19: Status of PCI Emulation in Xen - Roger Pau Monné, Citrix Systems R&D
 
XPDDS19: [ARM] OP-TEE Mediator in Xen - Volodymyr Babchuk, EPAM Systems
XPDDS19: [ARM] OP-TEE Mediator in Xen - Volodymyr Babchuk, EPAM SystemsXPDDS19: [ARM] OP-TEE Mediator in Xen - Volodymyr Babchuk, EPAM Systems
XPDDS19: [ARM] OP-TEE Mediator in Xen - Volodymyr Babchuk, EPAM Systems
 
XPDDS19: Bringing Xen to the Masses: The Story of Building a Community-driven...
XPDDS19: Bringing Xen to the Masses: The Story of Building a Community-driven...XPDDS19: Bringing Xen to the Masses: The Story of Building a Community-driven...
XPDDS19: Bringing Xen to the Masses: The Story of Building a Community-driven...
 
XPDDS19: Will Robots Automate Your Job Away? Streamlining Xen Project Contrib...
XPDDS19: Will Robots Automate Your Job Away? Streamlining Xen Project Contrib...XPDDS19: Will Robots Automate Your Job Away? Streamlining Xen Project Contrib...
XPDDS19: Will Robots Automate Your Job Away? Streamlining Xen Project Contrib...
 
XPDDS19: Client Virtualization Toolstack in Go - Nick Rosbrook & Brendan Kerr...
XPDDS19: Client Virtualization Toolstack in Go - Nick Rosbrook & Brendan Kerr...XPDDS19: Client Virtualization Toolstack in Go - Nick Rosbrook & Brendan Kerr...
XPDDS19: Client Virtualization Toolstack in Go - Nick Rosbrook & Brendan Kerr...
 
XPDDS19: Core Scheduling in Xen - Jürgen Groß, SUSE
XPDDS19: Core Scheduling in Xen - Jürgen Groß, SUSEXPDDS19: Core Scheduling in Xen - Jürgen Groß, SUSE
XPDDS19: Core Scheduling in Xen - Jürgen Groß, SUSE
 
XPDDS19: Implementing AMD MxGPU - Jonathan Farrell, Assured Information Security
XPDDS19: Implementing AMD MxGPU - Jonathan Farrell, Assured Information SecurityXPDDS19: Implementing AMD MxGPU - Jonathan Farrell, Assured Information Security
XPDDS19: Implementing AMD MxGPU - Jonathan Farrell, Assured Information Security
 

Recently uploaded

SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfRankYa
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfSeasiaInfotech2
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embeddingZilliz
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piececharlottematthew16
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 

Recently uploaded (20)

DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdf
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdf
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embedding
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 

Redesigning Xen Memory Sharing (Grant) Mechanism

  • 1. Redesigning Xen Memory Sharing (Grant) Mechanism Kaushik Kumar Ram (Rice University) Jose Renato Santos (HP Labs) Yoshio Turner (HP Labs) Alan L. Cox (Rice University) Scott Rixner (Rice University) Xen Summit Aug 2nd 2011
  • 2. This talk… Will make a case for redesigning the grant mechanism to achieve better I/O performance and for other benefits Will propose an alternate design for the grant mechanism Will present an evaluation of a prototype of this new design 8/2/11 1 Xen Summit 2011
  • 3. Outline Motivation Proposal A grant reuse scheme Evaluation Conclusion 8/2/11 2 Xen Summit 2011
  • 4. Traditional I/O Virtualization frontend backend Guest Domain Driver Domain Guest domain –driver domain memory sharing (grant mechanism) Physical Driver Xen Hypervisor Driver domain –device memory sharing (IOMMU) Device Hardware Two level memory sharing 8/2/11 3 Xen Summit 2011
  • 5. Direct Device Assignment Guest Domain Guest domain –device memory sharing (IOMMU) Physical Driver Xen Hypervisor Device Hardware One level memory sharing 8/2/11 4 Xen Summit 2011
  • 6. Grant Mechanism Controlled memory sharing between domains Source domain can share its memory pages with a specific destination domain Destination domain can validate that the shared pages belong to the source domain via the hypervisor 8/2/11 5 Xen Summit 2011
  • 7. Creating Shared Memory using Grant Mechanism Source Domain Creates grant entry in grant table Destination Domain Issues grant hypercall Hypervisor validates grant and maps source page Destination Domain Source Domain grant reference Grant Table Hypercall Xen Hypervisor Hardware 8/2/11 6 Xen Summit 2011
  • 8. Revoking Shared Memory using Grant Mechanism Destination Domain Issues grant hypercall Hypervisor unmaps page Source Domain Deletes grant entry from grant table Source Domain Destination Domain Grant Table Hypercall Xen Hypervisor Hardware 8/2/11 7 Xen Summit 2011
  • 9. IOMMU To safely share memory with I/O devices Maintain memory isolation between domains (direct device assignment) Protect against device driver bugs Protect against attacks exploiting device DMA Memory IOMMU Table I/O Device Machine Address I/O Address 8/2/11 8 Xen Summit 2011
  • 10. Sharing Memory via IOMMUs Para-virtualized I/O :- Fine-grained sharing IOMMU mapping setup during grant map hypercall and revoked during grant unmaphypercall Direct Device Assignment :- Only coarse-grained sharing 8/2/11 9 Xen Summit 2011
  • 11. High Memory Sharing Overhead I/O page is shared only for the duration of a single I/O High cost of grant hypercalls and mapping/unmapping incurred in driver domain on every I/O operation 8/2/11 10 Xen Summit 2011
  • 12. Reuse Scheme to Reduce Overhead Take advantage of temporal and/or spatial locality in use of I/O pages Reuse grants when I/O pages are reused Reduce grant issue and revoke operations Reduce grant hypercalls and mapping/unmapping overheads in driver domain 8/2/11 11 Xen Summit 2011
  • 13. Reuse Under Existing Grant Mechanism Grant reuse scheme requires – Not revoking grants after every I/O operation Persistent mapping of guest I/O pages in driver domain Grants can be revoked when pages re-purposed for non-I/O operations Today, there exists no way for guest domain to revoke access when its page is still mapped in driver domain 8/2/11 12 Xen Summit 2011
  • 14. Goals Enable reuse to reduce memory sharing related overheads during I/O Support unilateral revocation of grants by source domains Support an unified interface to share memory with I/O devices via IOMMUs 8/2/11 13 Xen Summit 2011
  • 15. Proposal Move the grant related hypercalls to the guest domains Guest domains directly interact with the hypervisor to issue and revoke grants Guest Domain Driver Domain Grant Table Hypercall Hypercall Xen Hypervisor Hardware 8/2/11 14 Xen Summit 2011
  • 16. Redesigned Grant Mechanism1. Initialization INIT1 hypercall (para-virtualized I/O only) Registers a virtual address range Base address(es) and size INIT2 hypercall Provides a “device_id” Returns the size of the “grant address space” 0 – size of address range Guest Domain Driver Domain INIT2 Hypercall INIT1 Hypercall Xen Hypervisor Hardware 8/2/11 15 Xen Summit 2011
  • 17. Grant (I/O) Address Space 8/2/11 Xen Summit 2011 16 0x20000 0x10000 Size of address range 0x40000 0x10000 0x0 Grant address space 0x30000 Driver domain virtual address space (page table) I/O virtual address space (IOMMU table)
  • 18. Redesigned Grant Mechanism2. Creating Shared Memory Guest Domain : Picks a “grant reference” Offset within grant address space Issues grant MAP hypercall Hypervisor validates grant and maps guest page Driver Domain : Translates grant reference into virtual address and I/O address Guest Domain Driver Domain grant reference MAP Hypercall Xen Hypervisor Setup IOMMU mapping Hardware 8/2/11 17 Xen Summit 2011
  • 19. Grant Mapping 8/2/11 Xen Summit 2011 18 0x20000 Grant reference 0x10000 0x40000 0x7000 0x10000 0x0 Grant address space 0x30000 Driver domain virtual address space (page table) I/O virtual address space (IOMMU table)
  • 20. Redesigned Grant Mechanism2. Creating Shared Memory Guest Domain : Picks a “grant reference” Offset within grant address space Issues grant MAP hypercall Hypervisor validates grant and maps guest page Driver Domain : Translates grant reference into virtual address and I/O address Guest Domain Driver Domain grant reference MAP Hypercall Xen Hypervisor Setup IOMMU mapping Hardware 8/2/11 19 Xen Summit 2011
  • 21. Grant Mapping 8/2/11 Xen Summit 2011 20 0x20000 Grant reference 0x10000 0x17000 0x40000 0x10000 0x37000 0x0 Grant address space 0x30000 Driver domain virtual address space (page table) I/O virtual address space (IOMMU table)
  • 22. Redesigned Grant Mechanism3. Revoking Shared Memory Guest Domain : Issues grant UNMAP hypercall Provides grant reference Hypervisor unmaps page Guest Domain Driver Domain UNMAP Hypercall Xen Hypervisor Remove IOMMU mapping Hardware 8/2/11 21 Xen Summit 2011
  • 23. Unilateral Revocation Guest domains can revoke grants any time by issuing grant UNMAP hypercall No driver domain participation required Safe to revoke grants even when the I/O pages are in use Since corresponding IOMMU mappings are also removed 8/2/11 22 Xen Summit 2011
  • 24. Unified Interface Grant hypercall interface can be invoked from the Guest DMA library Guest Domain SRIOV VF Driver netfront DMA Library Xen Hypervisor Hardware IOMMU 8/2/11 23 Xen Summit 2011
  • 25. Grant Reuse Take advantage of temporal and/or spatial locality in use of I/O pages Reuse grants when I/O pages are reused Reuse grants across multiple I/O operations Guest domain issues grant Driver domain uses I/O page for multiple I/O operations Guest domain revokes grant Guest domains can implement any scheme to reuse grants Relax safety constraints Security vs performance trade-off Shared mappings, delayed invalidations, optimistic tear-down etc. 8/2/11 24 Xen Summit 2011
  • 26. A Grant Reuse Scheme Security compromise – prevents corruption of non-I/O pages Policy – Never share a non-I/O read-write page Receive read-write sharing Allocate I/O buffers from a dedicated pool E.g. slab cache in Linux Revoke grant when pages are reaped from pool I/O buffer pool also promotes temporal locality Transmit read-only sharing Persistent sharing Grants revoked only when there are no more grant references available (or keep it mapped always) 8/2/11 25 Xen Summit 2011
  • 27. Evaluation - Setup and Methodology Server Configuration HP Proliant BL460c G7 Blade server Intel Xeon X5670 – 6 CPU cores 32 GB RAM 2 embedded 10 GbE ports Domain Configuration Domain0 linux 2.6.32.40 pvops kernel and 1 GB memory Driver Domain linux-2.6.18.8-xen0 (modified) and 512 MB memory Guest Domains linux-2.6.18.8-xenU (modified) and 512 MB memory Driver and guest domains configured with one VCPU each (pinned) Netperf TCP Streaming tests 8/2/11 26 Xen Summit 2011
  • 28.
  • 29.
  • 30. Conclusions Made a case for redesigning the grant mechanism Enable grant reuse Support unilateral revocations Support an unified interface to program IOMMUs Proposed an alternate design where the source domain interacts directly with the hypervisor Implemented and evaluated a reuse scheme 8/2/11 31 Xen Summit 2011