SlideShare a Scribd company logo
1 of 25
Download to read offline
I/O Scalability in Xen

Kevin Tian kevin.tian@intel.com
Eddie Dong eddie.dong@intel.com
Yang Zhang yang.zhang@intel.com


Sponsored by:

                &       &
Agenda

Overview of I/O Scalability Issues
• Excessive Interrupts Hurt
• I/O NUMA Challenge


Proposals
• Soft interrupt throttling in Xen
• Interrupt-Less NAPI (ILNAPI)
• Host I/O NUMA
• Guest I/O NUMA




                                     2
Retrospect…


2009 Xen Summit (Eddie Dong, …)
       Extending I/O Scalability in Xen


Covered topics
• VNIF: multiple TX/RX tasklets, notification frequency
• VT-d: vEOI optimization, vIntr delivery
• SR-IOV: adaptive interrupt coalescing (AIC)



                 Interrupt is the hotspot!


                                                          3
New Challenges Always Exist

Interrupt overhead is increasingly high
• One 10G Niantic NIC may incur 512k intr/s
 •   64 (VFs + PF) x 8000 intr/s
 •   Similar for dom0 when multiple queues are used

• 40G NIC is coming


Prevalent NUMA architecture (even on 2-node low end server)
• The DMA distance to memory node matters (I/O NUMA)
• w/o I/O NUMA awareness, DMA accesses may be suboptimal

      Need breakthrough in software architecture


                                                              4
Excessive Interrupts Hurt! (SR-IOV Rx Netperf)
350.00%                                                          10000


                                                                 9000
                            CPU% (ITR=8000)
300.00%                     CPU% (ITR=4000)
                            CPU% (ITR=2000)
                                                                 8000
                            CPU% (ITR=1000)
                            BW (ITR=8000)
250.00%                     BW (ITR=4000)
                                                                 7000
                            BW (ITR=2000)
                            BW (ITR=1000)
                                                                 6000
200.00%

                                                                 5000

150.00%
                                                                 4000


                                                                 3000
100.00%


                                                                 2000

 50.00%
                                                                 1000


  0.00%                                                          0
  CPU%    1vm   2vm   3vm         4vm         5vm   6vm   7vm   Mb/s




                                                                       5
Excessive Interrupts Hurt!
350.00%                                                                              10000



                                CPU% (ITR=8000)                                      9000
300.00%                         CPU% (ITR=4000)
                                CPU% (ITR=2000)
                                CPU% (ITR=1000)                                      8000
                                BW (ITR=8000)
                                BW (ITR=4000)
250.00%                         BW (ITR=2000)                                        7000
                                BW (ITR=1000)
                       Bandwidth is not
                                Linear (CPU% (ITR=8000))
                                                                 CPU% increases
                      saturated with low                                             6000
200.00%
                                                                   fast with high
                        interrupt rate!                           interrupt rate!    5000

150.00%
                                                                                     4000


                                                                                     3000
100.00%


                                                                                     2000

 50.00%
                                                                                     1000


  0.00%                                                                              0
  CPU%    1vm   2vm       3vm          4vm                 5vm     6vm      7vm     Mb/s




                                                                                           6
Excessive Interrupts Hurt! (Cont.)

Excessive VM-exits (7vm as example)
                External Interrupts                 35k/s
                    APIC Access                     49k/s
                Interrupt Window                    7k/s
Excessive context switches
•   “Tackling the Management Challenges of Server
         Consolidation on Multi-core System”,
         Hui Lv, Xen Summit 2011 SC

Excessive ISR/softirq overhead both
in Xen and guest


Similar impact for dom0 using multi-queue NIC


                                                            7
NUMA Status in Xen
                                        Host CPU/Memory NUMA
              Processor Nodes
                                        • Administrable based on
                                          capacity plan


                                        Guest CPU/Memory NUMA
                       Integrated       • Not supported
                      PCI-e devices
     IOH/PCH
                                        • But extensively discussed


                                        Lack of manageability for
                          Memory
                        Memory Buffer
                                        • Host I/O NUMA
I/O Devices
                                        • Guest I/O NUMA



                                                                      8
NUMA Related Structures

An integral combo for CPU, memory and I/O devices
• System Resource Affinity Table (SRAT)
 •   Associates CPUs and memory ranges, with proximity domain

• System Locality Distance Table (SLIT)
 •   Distance among proximity domains

• _PXM (Proximity) object
 •   Standard way to describe proximity info for I/O devices



Solely acquiring _PXM info of I/O devices is not enough to
construct I/O NUMA knowledge!




                                                                9
Host I/O NUMA Issues

No host I/O NUMA awareness in Dom0
•   Dom0 owns the majority of I/O devices
•   Dom0 memory is first allocated by skipping DMA zone
•   DMA memory is reallocated for continuity later
•   Above allocations are made within node_affinity mask round-robin
    •   No consideration on actual I/O NUMA topology


Complex and confusing if dom0 handles host I/O NUMA itself
•   Implicates physical CPU/Memory awareness in dom0 too
    •   Virtual NUMA vs. Host NUMA?

Xen however has no knowledge of _PXM()


                                                                       10
Guest I/O NUMA Issues

Guest needs I/O NUMA awareness to handle assigned devices
• Guest NUMA is the premise
Guest NUMA is not upstream yet!
• Extensive talks in previous Xen summits
 •   “VM Memory Allocation Schemes and PV NUMA Guests”, Dulloor Rao
 •   “Xen Guest NUMA: General Enabling Part”, Jun Nakajima

• Already extensive discussions and works…
• Now time to push into upstream!
No I/O NUMA information exposed to guest
Lack of I/O NUMA awareness in device assignment process



                                                                      11
Proposals




Per-interrupt overhead has been studied extensively!


   Now we want to reduce the interrupt number!




                                                       12
The Effect of Dynamic Interrupt Rate
   A manual tweak on ITR based on VM number (8000 / vm_num)
350.00%                                                                       10000


                                                                              9000
                             CPU% (ITR=8000)
300.00%                      CPU% (ITR=1000)
                             CPU% (dynamic ITR)                               8000
                             BW (ITR=8000)
250.00%                      BW (ITR=1000)
                             BW (dynamic ITR)                                 7000
                             Linear (CPU% (ITR=8000))
                             Linear (CPU% (ITR=1000))                         6000
200.00%                      Linear (CPU% (dynamic ITR))

                                                                              5000

150.00%
                                                                              4000


100.00%                                                                       3000


                                                                              2000
 50.00%
                                                                              1000


  0.00%                                                                       0
  CPU%    1vm   2vm    3vm          4vm                    5vm   6vm   7vm   Mb/s




                                                                                      13
Software Interrupt Throttling in Xen


Throttle virtual interrupts based on administrative policies
• Based on shared resources (e.g. bandwidth/VM_number)
• Based on priority and SLAs
• Apply to both PV and HVM guests


Fewer virtual interrupts reduces guest ISR/softirq overhead
It may further throttle physical interrupts too!
• If the device doesn’t trigger a new interrupt when an earlier
  request is still pending




                                                                  14
Interrupt-Less NAPI (ILNAPI)

NAPI itself doesn’t eliminate interrupts
• NAPI logic is scheduled by rx interrupt handler
 •   Mask interrupt when NAPI is scheduled
 •   Unmask interrupt when NAPI completes current poll
What about scheduling NAPI w/o interrupts?
• If we can piggyback NAPI schedule on other events…
 •   System calls, other interrupts, scheduling, …
• Internal NAPI schedule overhead is much less than a heavy
  device->Xen->VM interrupt path
Yes, that’s … “Interrupt-Less NAPI (ILNAPI)”



                                                              15
Interrupt-Less NAPI (Cont.)

          Net Core            Syscall   ILNAPI_HIGH watermark:
                               ISR      •   When there’re too many
                                            notifications within the guest
  NAPI          Event Pool
                             Schedule
                                        •   Serve as the high watermark for
                                …           NAPI schedule frequency



   Poll              ISR                ILNAPI_LOW watermark:
                                        •   Activated when there’re insufficient
    IXGBEVF driver
                                            notifications
                                        •   Serve as the low water mark to
                 IRQ                        ensure a reasonable traffic
                                        •   May move back to interrupt-driven
                                            manner
   IXGBE NIC




                                                                               16
Interrupt-Less NAPI (Cont.)
350.00%                                                                   10000


                                                                          9000
                            CPU% (ITR=8000)
300.00%                     CPU% (ITR=1000)
                            CPU% (ILNAPI)                                 8000
                            BW (ITR=8000)
                            BW (ITR=1000)
250.00%                     BW (ILNAPI)                                   7000
                            Linear (CPU% (ITR=8000))
                            Linear (CPU% (ITR=1000))
                            Linear (CPU% (ILNAPI))                        6000
200.00%

                                                                          5000

150.00%
                                                                          4000


                                                                          3000
100.00%


                                                                          2000

 50.00%
                                                                          1000


  0.00%                                                                   0
 CPU%     1vm   2vm   3vm       4vm                    5vm   6vm   7vm   Mb/s




                                                                           17
Interrupt-Less NAPI (Cont.)

Watermarks can be adaptively chosen by the driver
• Based on bandwidth/buffer estimation


Or an enlightened scheme:
• Xen may provide guidance through shared buffer
 •   Resource utilization (e.g. VM number)
 •   Administrative policies
 •   SLA requirements

• ILNAPI can be turned on/off dynamically under Xen’s control
 •   E.g. in case where latency is much concerned




                                                                18
Proposals




   We need close the Xen architecture gaps for
    both host I/O NUMA and guest I/O NUMA!




                                                 19
Host I/O NUMA


Give Xen full NUMA information:
• Xen already sees SRAT/SLIT
• New hypercall to convey I/O proximity info (_PXM) from
  Dom0
 •   Xen need extend _PXM to all child devices

• Extend DMA reallocation hypercall to carry device ID
 •   May need Xen version for set_dev_node

• Xen reallocates DMA memory based on proximity info
CPU access in dom0 remains NUMA-unaware…
• E.g. the communication between backend/frontend driver



                                                           20
Guest I/O NUMA


Okay, let’s help guest NUMA support in Xen! 


IOMMU may also spans nodes
• ACPI defines Remapping Hardware Status Affinity (RHSA)
 •   The association between IOMMU and proximity domain

• Allocate remapping table based on RHSA and proximity
  domain info




                                                           21
Guest I/O NUMA (Cont.)


Make up guest I/O NUMA awareness
• Construct _PXM method for assigned devices in DM
 •   Based on guest NUMA info (SRAT/SLIT)

• Extend control panel to favor I/O NUMA
 •   Assign devices which are in same proximity domain as specified nodes of
     the guest
 •   Or, affine guest to the node where assigned device is affined
 •   The policy for SR-IOV may be more constrained
     •   E.g. all guests sharing same SR-IOV device run on same node

 •   Warn user when optimal placement can’t be assured




                                                                               22
Summary


I/O scalability is always challenging every time when we re-
examine it! 


Excessive interrupts hurt I/O scalability, but there’re some
means both in Xen and in guest to mitigate it!


CPU/Memory NUMA has been well managed in Xen, but I/O
NUMA awareness is still not in place!




                                                               23
Legal Information

INFORMATION IN THIS DOCUMENT IS PROVIDED IN CONNECTION
WITH INTEL® PRODUCTS. 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 may make changes to specifications, product descriptions, and
plans at any time, without notice.
All dates provided are subject to change without notice.
Intel is a trademark of Intel Corporation in the U.S. and other
countries.
*Other names and brands may be claimed as the property of others.
Copyright © 2007, Intel Corporation. All rights are protected.




                                                                      24
25

More Related Content

What's hot

Hyper V And Scvmm Best Practis
Hyper V And Scvmm Best PractisHyper V And Scvmm Best Practis
Hyper V And Scvmm Best PractisBlauge
 
PV-Drivers for SeaBIOS using Upstream Qemu
PV-Drivers for SeaBIOS using Upstream QemuPV-Drivers for SeaBIOS using Upstream Qemu
PV-Drivers for SeaBIOS using Upstream QemuThe Linux Foundation
 
Track A-Shmuel Panijel, Windriver
Track A-Shmuel Panijel, WindriverTrack A-Shmuel Panijel, Windriver
Track A-Shmuel Panijel, Windriverchiportal
 
Cooperative VM Migration for a virtualized HPC Cluster with VMM-bypass I/O de...
Cooperative VM Migration for a virtualized HPC Cluster with VMM-bypass I/O de...Cooperative VM Migration for a virtualized HPC Cluster with VMM-bypass I/O de...
Cooperative VM Migration for a virtualized HPC Cluster with VMM-bypass I/O de...Ryousei Takano
 
Bare-Metal Hypervisor as a Platform for Innovation
Bare-Metal Hypervisor as a Platform for InnovationBare-Metal Hypervisor as a Platform for Innovation
Bare-Metal Hypervisor as a Platform for InnovationThe Linux Foundation
 
Presentation power vm common 2012
Presentation   power vm common 2012Presentation   power vm common 2012
Presentation power vm common 2012solarisyougood
 
Presentation power vm virtualization without limits
Presentation   power vm virtualization without limitsPresentation   power vm virtualization without limits
Presentation power vm virtualization without limitssolarisyougood
 
分会场二深入分析Veritas cluster server和storage foundation在aix高可用以及灾难恢复环境下如何对存储管理进行优化
分会场二深入分析Veritas cluster server和storage foundation在aix高可用以及灾难恢复环境下如何对存储管理进行优化分会场二深入分析Veritas cluster server和storage foundation在aix高可用以及灾难恢复环境下如何对存储管理进行优化
分会场二深入分析Veritas cluster server和storage foundation在aix高可用以及灾难恢复环境下如何对存储管理进行优化ITband
 
VMware vSphere 4.1 deep dive - part 1
VMware vSphere 4.1 deep dive - part 1VMware vSphere 4.1 deep dive - part 1
VMware vSphere 4.1 deep dive - part 1Louis Göhl
 

What's hot (20)

Hyper V And Scvmm Best Practis
Hyper V And Scvmm Best PractisHyper V And Scvmm Best Practis
Hyper V And Scvmm Best Practis
 
Nakajima numa-final
Nakajima numa-finalNakajima numa-final
Nakajima numa-final
 
PV-Drivers for SeaBIOS using Upstream Qemu
PV-Drivers for SeaBIOS using Upstream QemuPV-Drivers for SeaBIOS using Upstream Qemu
PV-Drivers for SeaBIOS using Upstream Qemu
 
XS Boston 2008 Self IO Emulation
XS Boston 2008 Self IO EmulationXS Boston 2008 Self IO Emulation
XS Boston 2008 Self IO Emulation
 
Ian Pratt Usenix 08 Keynote
Ian Pratt Usenix 08 KeynoteIan Pratt Usenix 08 Keynote
Ian Pratt Usenix 08 Keynote
 
XS Boston 2008 Project Status
XS Boston 2008 Project StatusXS Boston 2008 Project Status
XS Boston 2008 Project Status
 
XS Boston 2008 Fault Tolerance
XS Boston 2008 Fault ToleranceXS Boston 2008 Fault Tolerance
XS Boston 2008 Fault Tolerance
 
Minimizing I/O Latency in Xen-ARM
Minimizing I/O Latency in Xen-ARMMinimizing I/O Latency in Xen-ARM
Minimizing I/O Latency in Xen-ARM
 
Track A-Shmuel Panijel, Windriver
Track A-Shmuel Panijel, WindriverTrack A-Shmuel Panijel, Windriver
Track A-Shmuel Panijel, Windriver
 
Cooperative VM Migration for a virtualized HPC Cluster with VMM-bypass I/O de...
Cooperative VM Migration for a virtualized HPC Cluster with VMM-bypass I/O de...Cooperative VM Migration for a virtualized HPC Cluster with VMM-bypass I/O de...
Cooperative VM Migration for a virtualized HPC Cluster with VMM-bypass I/O de...
 
Graphics virtualization
Graphics virtualizationGraphics virtualization
Graphics virtualization
 
Bare-Metal Hypervisor as a Platform for Innovation
Bare-Metal Hypervisor as a Platform for InnovationBare-Metal Hypervisor as a Platform for Innovation
Bare-Metal Hypervisor as a Platform for Innovation
 
XS Japan 2008 Ganeti English
XS Japan 2008 Ganeti EnglishXS Japan 2008 Ganeti English
XS Japan 2008 Ganeti English
 
XS Oracle 2009 Error Detection
XS Oracle 2009 Error DetectionXS Oracle 2009 Error Detection
XS Oracle 2009 Error Detection
 
Presentation power vm common 2012
Presentation   power vm common 2012Presentation   power vm common 2012
Presentation power vm common 2012
 
Presentation power vm virtualization without limits
Presentation   power vm virtualization without limitsPresentation   power vm virtualization without limits
Presentation power vm virtualization without limits
 
分会场二深入分析Veritas cluster server和storage foundation在aix高可用以及灾难恢复环境下如何对存储管理进行优化
分会场二深入分析Veritas cluster server和storage foundation在aix高可用以及灾难恢复环境下如何对存储管理进行优化分会场二深入分析Veritas cluster server和storage foundation在aix高可用以及灾难恢复环境下如何对存储管理进行优化
分会场二深入分析Veritas cluster server和storage foundation在aix高可用以及灾难恢复环境下如何对存储管理进行优化
 
Hypervisors
HypervisorsHypervisors
Hypervisors
 
Windows Server 2012 Hyper-V Networking Evolved
Windows Server 2012 Hyper-V Networking Evolved Windows Server 2012 Hyper-V Networking Evolved
Windows Server 2012 Hyper-V Networking Evolved
 
VMware vSphere 4.1 deep dive - part 1
VMware vSphere 4.1 deep dive - part 1VMware vSphere 4.1 deep dive - part 1
VMware vSphere 4.1 deep dive - part 1
 

Viewers also liked

Engaging the Xen Developer Comminity
Engaging the Xen Developer ComminityEngaging the Xen Developer Comminity
Engaging the Xen Developer ComminityThe Linux Foundation
 
Xen.org: The past, the present and exciting Future
Xen.org: The past, the present and exciting FutureXen.org: The past, the present and exciting Future
Xen.org: The past, the present and exciting FutureThe Linux Foundation
 
Xenalyze: Finding meaning in the chaos
Xenalyze: Finding meaning in the chaosXenalyze: Finding meaning in the chaos
Xenalyze: Finding meaning in the chaosThe Linux Foundation
 
Windsor: Domain 0 Disaggregation for XenServer and XCP
	Windsor: Domain 0 Disaggregation for XenServer and XCP	Windsor: Domain 0 Disaggregation for XenServer and XCP
Windsor: Domain 0 Disaggregation for XenServer and XCPThe Linux Foundation
 
Redesigning Xen Memory Sharing (Grant) Mechanism
Redesigning Xen Memory Sharing (Grant) MechanismRedesigning Xen Memory Sharing (Grant) Mechanism
Redesigning Xen Memory Sharing (Grant) MechanismThe Linux Foundation
 
Hardware accelerated Virtualization in the ARM Cortex™ Processors
Hardware accelerated Virtualization in the ARM Cortex™ ProcessorsHardware accelerated Virtualization in the ARM Cortex™ Processors
Hardware accelerated Virtualization in the ARM Cortex™ ProcessorsThe Linux Foundation
 
Kvm performance optimization for ubuntu
Kvm performance optimization for ubuntuKvm performance optimization for ubuntu
Kvm performance optimization for ubuntuSim Janghoon
 

Viewers also liked (12)

Skylark: Easy Cloud Computing
Skylark: Easy Cloud ComputingSkylark: Easy Cloud Computing
Skylark: Easy Cloud Computing
 
Engaging the Xen Developer Comminity
Engaging the Xen Developer ComminityEngaging the Xen Developer Comminity
Engaging the Xen Developer Comminity
 
Xen in Linux 3.x (or PVOPS)
Xen in Linux 3.x (or PVOPS)Xen in Linux 3.x (or PVOPS)
Xen in Linux 3.x (or PVOPS)
 
XCP Project Update
XCP Project UpdateXCP Project Update
XCP Project Update
 
Xen.org: The past, the present and exciting Future
Xen.org: The past, the present and exciting FutureXen.org: The past, the present and exciting Future
Xen.org: The past, the present and exciting Future
 
Xenalyze: Finding meaning in the chaos
Xenalyze: Finding meaning in the chaosXenalyze: Finding meaning in the chaos
Xenalyze: Finding meaning in the chaos
 
Windsor: Domain 0 Disaggregation for XenServer and XCP
	Windsor: Domain 0 Disaggregation for XenServer and XCP	Windsor: Domain 0 Disaggregation for XenServer and XCP
Windsor: Domain 0 Disaggregation for XenServer and XCP
 
Redesigning Xen Memory Sharing (Grant) Mechanism
Redesigning Xen Memory Sharing (Grant) MechanismRedesigning Xen Memory Sharing (Grant) Mechanism
Redesigning Xen Memory Sharing (Grant) Mechanism
 
Xen io
Xen ioXen io
Xen io
 
Hardware accelerated Virtualization in the ARM Cortex™ Processors
Hardware accelerated Virtualization in the ARM Cortex™ ProcessorsHardware accelerated Virtualization in the ARM Cortex™ Processors
Hardware accelerated Virtualization in the ARM Cortex™ Processors
 
Xen @ Google, 2011
Xen @ Google, 2011Xen @ Google, 2011
Xen @ Google, 2011
 
Kvm performance optimization for ubuntu
Kvm performance optimization for ubuntuKvm performance optimization for ubuntu
Kvm performance optimization for ubuntu
 

Similar to I/O Scalability in Xen

COLO: COarse-grain LOck-stepping Virtual Machines for Non-stop Service
COLO: COarse-grain LOck-stepping Virtual Machines for Non-stop ServiceCOLO: COarse-grain LOck-stepping Virtual Machines for Non-stop Service
COLO: COarse-grain LOck-stepping Virtual Machines for Non-stop ServiceThe Linux Foundation
 
Usenix LISA 2012 - Choosing a Proxy
Usenix LISA 2012 - Choosing a ProxyUsenix LISA 2012 - Choosing a Proxy
Usenix LISA 2012 - Choosing a ProxyLeif Hedstrom
 
Gerenciamento de Memória(2)
Gerenciamento de Memória(2)Gerenciamento de Memória(2)
Gerenciamento de Memória(2)elliando dias
 
Evaluating Data Freshness in Large Scale Replicated Databases
Evaluating Data Freshness in Large Scale Replicated DatabasesEvaluating Data Freshness in Large Scale Replicated Databases
Evaluating Data Freshness in Large Scale Replicated DatabasesMiguel Araújo
 
Get Better I/O Performance in VMware vSphere 5.1 Environments with Emulex 16G...
Get Better I/O Performance in VMware vSphere 5.1 Environments with Emulex 16G...Get Better I/O Performance in VMware vSphere 5.1 Environments with Emulex 16G...
Get Better I/O Performance in VMware vSphere 5.1 Environments with Emulex 16G...Emulex Corporation
 
Get Better I/O Performance in VMware vSphere 5.1 Environments with Emulex 16G...
Get Better I/O Performance in VMware vSphere 5.1 Environments with Emulex 16G...Get Better I/O Performance in VMware vSphere 5.1 Environments with Emulex 16G...
Get Better I/O Performance in VMware vSphere 5.1 Environments with Emulex 16G...Emulex Corporation
 
Betting On Data Grids
Betting On Data GridsBetting On Data Grids
Betting On Data Gridsgojkoadzic
 
Acceleration for big data, hadoop and memcached it168文库
Acceleration for big data, hadoop and memcached it168文库Acceleration for big data, hadoop and memcached it168文库
Acceleration for big data, hadoop and memcached it168文库Accenture
 
Acceleration for big data, hadoop and memcached it168文库
Acceleration for big data, hadoop and memcached it168文库Acceleration for big data, hadoop and memcached it168文库
Acceleration for big data, hadoop and memcached it168文库Accenture
 
Novell ZENworks Configuration Management Database Management
Novell ZENworks Configuration Management Database ManagementNovell ZENworks Configuration Management Database Management
Novell ZENworks Configuration Management Database ManagementNovell
 
Oracle no sql overview brief
Oracle no sql overview briefOracle no sql overview brief
Oracle no sql overview briefInfiniteGraph
 
Virtual Network Performance Challenge
Virtual Network Performance ChallengeVirtual Network Performance Challenge
Virtual Network Performance ChallengeStephen Hemminger
 
Chipstart SoC System Manager (SSM) Non-NDA Overview
Chipstart SoC System Manager (SSM) Non-NDA OverviewChipstart SoC System Manager (SSM) Non-NDA Overview
Chipstart SoC System Manager (SSM) Non-NDA OverviewChipStart LLC
 
Legend Power Technical Brochure
Legend Power Technical BrochureLegend Power Technical Brochure
Legend Power Technical BrochureLegend Power
 
Hyper v.nu-windows serverhyperv-networkingevolved
Hyper v.nu-windows serverhyperv-networkingevolvedHyper v.nu-windows serverhyperv-networkingevolved
Hyper v.nu-windows serverhyperv-networkingevolvedhypervnu
 
Why hitachi virtual storage platform does so well in a mainframe environment ...
Why hitachi virtual storage platform does so well in a mainframe environment ...Why hitachi virtual storage platform does so well in a mainframe environment ...
Why hitachi virtual storage platform does so well in a mainframe environment ...Hitachi Vantara
 
Honours Project Presentation
Honours Project PresentationHonours Project Presentation
Honours Project Presentationkarsithe
 

Similar to I/O Scalability in Xen (20)

Extending Io Scalability
Extending Io ScalabilityExtending Io Scalability
Extending Io Scalability
 
COLO: COarse-grain LOck-stepping Virtual Machines for Non-stop Service
COLO: COarse-grain LOck-stepping Virtual Machines for Non-stop ServiceCOLO: COarse-grain LOck-stepping Virtual Machines for Non-stop Service
COLO: COarse-grain LOck-stepping Virtual Machines for Non-stop Service
 
Usenix LISA 2012 - Choosing a Proxy
Usenix LISA 2012 - Choosing a ProxyUsenix LISA 2012 - Choosing a Proxy
Usenix LISA 2012 - Choosing a Proxy
 
Gerenciamento de Memória(2)
Gerenciamento de Memória(2)Gerenciamento de Memória(2)
Gerenciamento de Memória(2)
 
Virtual net performance
Virtual net performanceVirtual net performance
Virtual net performance
 
Evaluating Data Freshness in Large Scale Replicated Databases
Evaluating Data Freshness in Large Scale Replicated DatabasesEvaluating Data Freshness in Large Scale Replicated Databases
Evaluating Data Freshness in Large Scale Replicated Databases
 
Get Better I/O Performance in VMware vSphere 5.1 Environments with Emulex 16G...
Get Better I/O Performance in VMware vSphere 5.1 Environments with Emulex 16G...Get Better I/O Performance in VMware vSphere 5.1 Environments with Emulex 16G...
Get Better I/O Performance in VMware vSphere 5.1 Environments with Emulex 16G...
 
Get Better I/O Performance in VMware vSphere 5.1 Environments with Emulex 16G...
Get Better I/O Performance in VMware vSphere 5.1 Environments with Emulex 16G...Get Better I/O Performance in VMware vSphere 5.1 Environments with Emulex 16G...
Get Better I/O Performance in VMware vSphere 5.1 Environments with Emulex 16G...
 
Betting On Data Grids
Betting On Data GridsBetting On Data Grids
Betting On Data Grids
 
Acceleration for big data, hadoop and memcached it168文库
Acceleration for big data, hadoop and memcached it168文库Acceleration for big data, hadoop and memcached it168文库
Acceleration for big data, hadoop and memcached it168文库
 
Acceleration for big data, hadoop and memcached it168文库
Acceleration for big data, hadoop and memcached it168文库Acceleration for big data, hadoop and memcached it168文库
Acceleration for big data, hadoop and memcached it168文库
 
Novell ZENworks Configuration Management Database Management
Novell ZENworks Configuration Management Database ManagementNovell ZENworks Configuration Management Database Management
Novell ZENworks Configuration Management Database Management
 
Oracle no sql overview brief
Oracle no sql overview briefOracle no sql overview brief
Oracle no sql overview brief
 
Virtual Network Performance Challenge
Virtual Network Performance ChallengeVirtual Network Performance Challenge
Virtual Network Performance Challenge
 
Eurotech 30 01 2013
Eurotech 30 01 2013Eurotech 30 01 2013
Eurotech 30 01 2013
 
Chipstart SoC System Manager (SSM) Non-NDA Overview
Chipstart SoC System Manager (SSM) Non-NDA OverviewChipstart SoC System Manager (SSM) Non-NDA Overview
Chipstart SoC System Manager (SSM) Non-NDA Overview
 
Legend Power Technical Brochure
Legend Power Technical BrochureLegend Power Technical Brochure
Legend Power Technical Brochure
 
Hyper v.nu-windows serverhyperv-networkingevolved
Hyper v.nu-windows serverhyperv-networkingevolvedHyper v.nu-windows serverhyperv-networkingevolved
Hyper v.nu-windows serverhyperv-networkingevolved
 
Why hitachi virtual storage platform does so well in a mainframe environment ...
Why hitachi virtual storage platform does so well in a mainframe environment ...Why hitachi virtual storage platform does so well in a mainframe environment ...
Why hitachi virtual storage platform does so well in a mainframe environment ...
 
Honours Project Presentation
Honours Project PresentationHonours Project Presentation
Honours Project Presentation
 

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: Xen Dom0-less - Stefano Stabellini, Principal Engineer, Xilinx
XPDDS19 Keynote: Xen Dom0-less - Stefano Stabellini, Principal Engineer, XilinxXPDDS19 Keynote: Xen Dom0-less - Stefano Stabellini, Principal Engineer, Xilinx
XPDDS19 Keynote: Xen Dom0-less - Stefano Stabellini, Principal Engineer, XilinxThe 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
 

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: Xen Dom0-less - Stefano Stabellini, Principal Engineer, Xilinx
XPDDS19 Keynote: Xen Dom0-less - Stefano Stabellini, Principal Engineer, XilinxXPDDS19 Keynote: Xen Dom0-less - Stefano Stabellini, Principal Engineer, Xilinx
XPDDS19 Keynote: Xen Dom0-less - Stefano Stabellini, Principal Engineer, Xilinx
 
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
 

Recently uploaded

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
 
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
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
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
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
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
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
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
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
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
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
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
 

Recently uploaded (20)

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
 
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
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
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
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
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
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
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
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
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
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
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
 

I/O Scalability in Xen

  • 1. I/O Scalability in Xen Kevin Tian kevin.tian@intel.com Eddie Dong eddie.dong@intel.com Yang Zhang yang.zhang@intel.com Sponsored by: & &
  • 2. Agenda Overview of I/O Scalability Issues • Excessive Interrupts Hurt • I/O NUMA Challenge Proposals • Soft interrupt throttling in Xen • Interrupt-Less NAPI (ILNAPI) • Host I/O NUMA • Guest I/O NUMA 2
  • 3. Retrospect… 2009 Xen Summit (Eddie Dong, …) Extending I/O Scalability in Xen Covered topics • VNIF: multiple TX/RX tasklets, notification frequency • VT-d: vEOI optimization, vIntr delivery • SR-IOV: adaptive interrupt coalescing (AIC) Interrupt is the hotspot! 3
  • 4. New Challenges Always Exist Interrupt overhead is increasingly high • One 10G Niantic NIC may incur 512k intr/s • 64 (VFs + PF) x 8000 intr/s • Similar for dom0 when multiple queues are used • 40G NIC is coming Prevalent NUMA architecture (even on 2-node low end server) • The DMA distance to memory node matters (I/O NUMA) • w/o I/O NUMA awareness, DMA accesses may be suboptimal Need breakthrough in software architecture 4
  • 5. Excessive Interrupts Hurt! (SR-IOV Rx Netperf) 350.00% 10000 9000 CPU% (ITR=8000) 300.00% CPU% (ITR=4000) CPU% (ITR=2000) 8000 CPU% (ITR=1000) BW (ITR=8000) 250.00% BW (ITR=4000) 7000 BW (ITR=2000) BW (ITR=1000) 6000 200.00% 5000 150.00% 4000 3000 100.00% 2000 50.00% 1000 0.00% 0 CPU% 1vm 2vm 3vm 4vm 5vm 6vm 7vm Mb/s 5
  • 6. Excessive Interrupts Hurt! 350.00% 10000 CPU% (ITR=8000) 9000 300.00% CPU% (ITR=4000) CPU% (ITR=2000) CPU% (ITR=1000) 8000 BW (ITR=8000) BW (ITR=4000) 250.00% BW (ITR=2000) 7000 BW (ITR=1000) Bandwidth is not Linear (CPU% (ITR=8000)) CPU% increases saturated with low 6000 200.00% fast with high interrupt rate! interrupt rate! 5000 150.00% 4000 3000 100.00% 2000 50.00% 1000 0.00% 0 CPU% 1vm 2vm 3vm 4vm 5vm 6vm 7vm Mb/s 6
  • 7. Excessive Interrupts Hurt! (Cont.) Excessive VM-exits (7vm as example) External Interrupts 35k/s APIC Access 49k/s Interrupt Window 7k/s Excessive context switches • “Tackling the Management Challenges of Server Consolidation on Multi-core System”, Hui Lv, Xen Summit 2011 SC Excessive ISR/softirq overhead both in Xen and guest Similar impact for dom0 using multi-queue NIC 7
  • 8. NUMA Status in Xen Host CPU/Memory NUMA Processor Nodes • Administrable based on capacity plan Guest CPU/Memory NUMA Integrated • Not supported PCI-e devices IOH/PCH • But extensively discussed Lack of manageability for Memory Memory Buffer • Host I/O NUMA I/O Devices • Guest I/O NUMA 8
  • 9. NUMA Related Structures An integral combo for CPU, memory and I/O devices • System Resource Affinity Table (SRAT) • Associates CPUs and memory ranges, with proximity domain • System Locality Distance Table (SLIT) • Distance among proximity domains • _PXM (Proximity) object • Standard way to describe proximity info for I/O devices Solely acquiring _PXM info of I/O devices is not enough to construct I/O NUMA knowledge! 9
  • 10. Host I/O NUMA Issues No host I/O NUMA awareness in Dom0 • Dom0 owns the majority of I/O devices • Dom0 memory is first allocated by skipping DMA zone • DMA memory is reallocated for continuity later • Above allocations are made within node_affinity mask round-robin • No consideration on actual I/O NUMA topology Complex and confusing if dom0 handles host I/O NUMA itself • Implicates physical CPU/Memory awareness in dom0 too • Virtual NUMA vs. Host NUMA? Xen however has no knowledge of _PXM() 10
  • 11. Guest I/O NUMA Issues Guest needs I/O NUMA awareness to handle assigned devices • Guest NUMA is the premise Guest NUMA is not upstream yet! • Extensive talks in previous Xen summits • “VM Memory Allocation Schemes and PV NUMA Guests”, Dulloor Rao • “Xen Guest NUMA: General Enabling Part”, Jun Nakajima • Already extensive discussions and works… • Now time to push into upstream! No I/O NUMA information exposed to guest Lack of I/O NUMA awareness in device assignment process 11
  • 12. Proposals Per-interrupt overhead has been studied extensively! Now we want to reduce the interrupt number! 12
  • 13. The Effect of Dynamic Interrupt Rate A manual tweak on ITR based on VM number (8000 / vm_num) 350.00% 10000 9000 CPU% (ITR=8000) 300.00% CPU% (ITR=1000) CPU% (dynamic ITR) 8000 BW (ITR=8000) 250.00% BW (ITR=1000) BW (dynamic ITR) 7000 Linear (CPU% (ITR=8000)) Linear (CPU% (ITR=1000)) 6000 200.00% Linear (CPU% (dynamic ITR)) 5000 150.00% 4000 100.00% 3000 2000 50.00% 1000 0.00% 0 CPU% 1vm 2vm 3vm 4vm 5vm 6vm 7vm Mb/s 13
  • 14. Software Interrupt Throttling in Xen Throttle virtual interrupts based on administrative policies • Based on shared resources (e.g. bandwidth/VM_number) • Based on priority and SLAs • Apply to both PV and HVM guests Fewer virtual interrupts reduces guest ISR/softirq overhead It may further throttle physical interrupts too! • If the device doesn’t trigger a new interrupt when an earlier request is still pending 14
  • 15. Interrupt-Less NAPI (ILNAPI) NAPI itself doesn’t eliminate interrupts • NAPI logic is scheduled by rx interrupt handler • Mask interrupt when NAPI is scheduled • Unmask interrupt when NAPI completes current poll What about scheduling NAPI w/o interrupts? • If we can piggyback NAPI schedule on other events… • System calls, other interrupts, scheduling, … • Internal NAPI schedule overhead is much less than a heavy device->Xen->VM interrupt path Yes, that’s … “Interrupt-Less NAPI (ILNAPI)” 15
  • 16. Interrupt-Less NAPI (Cont.) Net Core Syscall ILNAPI_HIGH watermark: ISR • When there’re too many notifications within the guest NAPI Event Pool Schedule • Serve as the high watermark for … NAPI schedule frequency Poll ISR ILNAPI_LOW watermark: • Activated when there’re insufficient IXGBEVF driver notifications • Serve as the low water mark to IRQ ensure a reasonable traffic • May move back to interrupt-driven manner IXGBE NIC 16
  • 17. Interrupt-Less NAPI (Cont.) 350.00% 10000 9000 CPU% (ITR=8000) 300.00% CPU% (ITR=1000) CPU% (ILNAPI) 8000 BW (ITR=8000) BW (ITR=1000) 250.00% BW (ILNAPI) 7000 Linear (CPU% (ITR=8000)) Linear (CPU% (ITR=1000)) Linear (CPU% (ILNAPI)) 6000 200.00% 5000 150.00% 4000 3000 100.00% 2000 50.00% 1000 0.00% 0 CPU% 1vm 2vm 3vm 4vm 5vm 6vm 7vm Mb/s 17
  • 18. Interrupt-Less NAPI (Cont.) Watermarks can be adaptively chosen by the driver • Based on bandwidth/buffer estimation Or an enlightened scheme: • Xen may provide guidance through shared buffer • Resource utilization (e.g. VM number) • Administrative policies • SLA requirements • ILNAPI can be turned on/off dynamically under Xen’s control • E.g. in case where latency is much concerned 18
  • 19. Proposals We need close the Xen architecture gaps for both host I/O NUMA and guest I/O NUMA! 19
  • 20. Host I/O NUMA Give Xen full NUMA information: • Xen already sees SRAT/SLIT • New hypercall to convey I/O proximity info (_PXM) from Dom0 • Xen need extend _PXM to all child devices • Extend DMA reallocation hypercall to carry device ID • May need Xen version for set_dev_node • Xen reallocates DMA memory based on proximity info CPU access in dom0 remains NUMA-unaware… • E.g. the communication between backend/frontend driver 20
  • 21. Guest I/O NUMA Okay, let’s help guest NUMA support in Xen!  IOMMU may also spans nodes • ACPI defines Remapping Hardware Status Affinity (RHSA) • The association between IOMMU and proximity domain • Allocate remapping table based on RHSA and proximity domain info 21
  • 22. Guest I/O NUMA (Cont.) Make up guest I/O NUMA awareness • Construct _PXM method for assigned devices in DM • Based on guest NUMA info (SRAT/SLIT) • Extend control panel to favor I/O NUMA • Assign devices which are in same proximity domain as specified nodes of the guest • Or, affine guest to the node where assigned device is affined • The policy for SR-IOV may be more constrained • E.g. all guests sharing same SR-IOV device run on same node • Warn user when optimal placement can’t be assured 22
  • 23. Summary I/O scalability is always challenging every time when we re- examine it!  Excessive interrupts hurt I/O scalability, but there’re some means both in Xen and in guest to mitigate it! CPU/Memory NUMA has been well managed in Xen, but I/O NUMA awareness is still not in place! 23
  • 24. Legal Information INFORMATION IN THIS DOCUMENT IS PROVIDED IN CONNECTION WITH INTEL® PRODUCTS. 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 may make changes to specifications, product descriptions, and plans at any time, without notice. All dates provided are subject to change without notice. Intel is a trademark of Intel Corporation in the U.S. and other countries. *Other names and brands may be claimed as the property of others. Copyright © 2007, Intel Corporation. All rights are protected. 24
  • 25. 25